picocli
SLF4J
picocli | SLF4J | |
---|---|---|
29 | 23 | |
4,714 | 2,257 | |
- | 0.5% | |
8.8 | 7.8 | |
5 days ago | 19 days ago | |
Java | Java | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
picocli
-
GraalVM for JDK 21 is here
Picocli allows using a compiler annotation processor to generate classes at compile time instead [0].
[0]: https://github.com/remkop/picocli/blob/main/picocli-codegen/...
-
Any library you would like to recommend to others as it helps you a lot? For me, mapstruct is one of them. Hopefully I would hear some other nice libraries I never try.
Picocli is a pretty good one for writing CLI apps
-
“Why I develop on Windows”
"and there are simply no good command line input parsing libraries for Java."
Looks like author missed the most obvious and popular OSS one: https://picocli.info/
-
Java 20 / JDK 20: General Availability
The command line example gave me the "ick". It is usually preferrable to parse the command line arguments into one instance of a custom "command class", rather than into a list of things. Like jcommander, picocli or jbock do.
-
any opinion good or bed about a code that smells?
Complex argument parsing needs to be auto-generated by libraries like picocli. Even if you need something custom, it'd be quicker to write an Annotation processor from scratch than editing that file.
-
Owl: A toolkit for writing command-line user interfaces in Elixir
https://github.com/remkop/picocli
"Picocli-based applications can be ahead-of-time compiled to a GraalVM native image, with extremely fast startup time and lower memory requirements, which can be distributed as a single executable file."
https://picocli.info/quick-guide.html
-
Building a Java CLI. How can I make it more powershell-friendly
Using picocli to handle your command line options gives you the best chance to automatically generate an ArgumentCompleter script in the future, but won't help you today (other than possibly making your command line handling more standardized & easier).
-
must known frameworks/libs/tech, every senior java developer must know(?)
Picocli
-
🔍 Validate New-Caledonia Phone Numbers from cli ⌨️
Then we released a JBang! and picocli based cli that would be, on any OS running a jvm runtime :
-
📲 Inspired by Twilio we started to build our own (pico)cli to send sms
picocli : "a mighty tiny command line interface"
SLF4J
- Slf4j.org TLS Certificate Expired
-
dazl — a facade for configurable/pluggable Go logging
A few years ago, my team moved from Java to Go. Working on Go projects, we encountered a wide variety of logging frameworks with different APIs, configuration, and formatting. We soon found ourselves longing for a logging abstraction layer like Java’s slf4j, which had proven invaluable for use in reusable libraries or configuring and debugging production systems. So, not long after moving to Go, we began working toward replacing what we had lost in slf4j.
-
Fargate logging thru console awslogs or directly to Cloudwatch?
I'm not familiar with Serilog as I code mostly in Java, use slf4j (logs to stdout) and our apps send logs to Cloudwatch using the task definition's awslogs configuration. I prefer it this way because I can customize the log configurations in my task definitions. Also the default stream name has this format prefix-name/container-name/ecs-task-id so I can easily identify the logs of the task I want to look at. I haven't experienced any downsides with this approach and our apps publish a shit ton of logs. Cloudwatch approach looks like you can customize the stream name?
-
How does Loggers get multiple parameters in functions
slf4j is open source. You can look at the code.
-
Logging in your API
Java -> Logback, Log4j2, JDK (Java Util Logging), Slf4j, e.t.c.
-
Primeiros passos no desenvolvimento Java em 2023: um guia particular
slf4j para padronização dos logs;
- What are some of the biggest problems you personally face in Java?
-
must known frameworks/libs/tech, every senior java developer must know(?)
SLF4J
-
Go standard library: structured, leveled logging
> My God. Logging in protobuf?
Yes, or any other data format and/or transport protocol.
I'm surprised this is up for debate.
> Logging is the lowest of all debugging utilities - its the first thing you ever do writing software - “hello world”. And, while I admire structural logging, the truth is printing strings remains (truly) the lowest common denominator across software developers.
This sort of comment is terribly miopic. You can have a logging API, and then configure your logging to transport the events anywhere, any way. This is a terribly basic feature and requirement, and one that comes out of the box with some systems. Check how SLF4J[1] is pervasive in Java, and how any SLF4J implementation offers logging to stdout or a local file as a very specific and basic usecase.
It turns out that nowadays most developers write software that runs on many computers that aren't stashed over or under their desks, and thus they need efficient and convenient ways to check what's happening either in a node or in all deployments.
[1] https://www.slf4j.org/
- Logback en Springboot
What are some alternatives?
Spring Shell 3 - Spring based shell
Apache Log4j 2 - Apache Log4j 2 is a versatile, feature-rich, efficient logging API and backend for Java.
JCommander - Command line parsing framework for Java
Logbook - An extensible Java library for HTTP request and response logging
args4j - args4j
tinylog - tinylog is a lightweight logging framework for Java, Kotlin, Scala, and Android
Airline - Java annotation-based framework for parsing Git like command line structures
kibana - Your window into the Elastic Stack
JLine - JLine is a Java library for handling console input.
graylog - Free and open log management
JewelCLI - JewelCli uses an annotated interface definition to automatically parse and present command line arguments
Logback - The reliable, generic, fast and flexible logging framework for Java.