sbt-antlr4
sbt-assembly
sbt-antlr4 | sbt-assembly | |
---|---|---|
1 | 6 | |
57 | 1,934 | |
- | 0.1% | |
0.0 | 6.6 | |
over 2 years ago | about 2 months ago | |
Scala | Scala | |
- | 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.
sbt-antlr4
-
How to create a small json lib using antlr and shapeless
Now we are ready to create a new project. For project building i'll use sbt, but it is also possible to use maven or gradle. After project creation we need to add antlr4 compiler plugin – sbt-antlr4. Also, we will need a shapeless for codec derivation, so let's add this library too. After all, plugins.sbt and build.sbt will look like this:
sbt-assembly
-
Trouble with sbt-native-packager
sbt-assembly is still my go-to. So what I'd prefer is the combination of sbt-assembly (to build my .jar that I can just java -jar anytime I want) and sbt-jib (to construct my OCI image including my assembly .jar for deployment in some container orchestration environment).
- sbt-assembly 2.0.0-RC1 released
-
SBT error when running package application: java.lang.RuntimeException: No main class detected.
You may also use sbt-assembly to produce an uber JAR that embeds the Scala stdlib together with your code, which means that now for running your program you only need a JRE like java -jar app-assembly.jar. This option is great because now if you start adding dependencies to your project those are also included in this massive JAR.
-
Welcome to JAR Hell, Part 2: Deployment Strategies
Sbt-assembly defaults to silently concatenating configs. But even if it didn't, the configs wouldn't be in any particular order when resolving.
-
How to handle sbt deduplication errors on module-info.class files
Ticket of record is https://github.com/sbt/sbt-assembly/issues/391
-
Building native images and compiling with GraalVM and sbt
With the sbt-assembly plugin you can create JAR-files with all of its dependencies (fat JARs). sbt assembly creates this target/scala-2.12/apply-at-vdb-assembly-0.1.0-SNAPSHOT.jar which has a size of around 42MB:
What are some alternatives?
ANTLR - ANTLR (ANother Tool for Language Recognition) is a powerful parser generator for reading, processing, executing, or translating structured text or binary files.
sbt-native-packager - sbt Native Packager
grammars-v4 - Grammars written for ANTLR v4; expectation that the grammars are free of actions.
coursier - Pure Scala Artifact Fetching
sbt - sbt, the interactive build tool
sbt-release - A release plugin for sbt
sbt-docker - Create Docker images directly from sbt
json-serde - Example of usage antlr4 and shapeless
sbt-dependency-check - SBT Plugin for OWASP DependencyCheck. Monitor your dependencies and report if there are any publicly known vulnerabilities (e.g. CVEs). :rainbow:
sbt-buildinfo - I know this because build.sbt knows this.
sbt-pack - A sbt plugin for creating distributable Scala packages.