sbt-native-image VS sbt-native-packager

Compare sbt-native-image vs sbt-native-packager and see what are their differences.

Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
sbt-native-image sbt-native-packager
5 5
245 1,581
1.2% -0.1%
3.4 6.8
5 months ago 4 days ago
Scala Scala
- BSD 2-clause "Simplified" License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
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-native-image

Posts with mentions or reviews of sbt-native-image. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-09-13.
  • Scala.js AWS Lambda, using Scala 3
    6 projects | /r/scala | 13 Sep 2022
    Take a look at sbt-native-image or sbt-native-packager for building the native image.
  • GraalVM native-image with Scala 3 reflection hell
    3 projects | /r/scala | 9 Jan 2022
    The reason seems to be Scala 3's new encoding for lazy vals, where a reflective access to a variable called bitmap takes place. To demonstrate this, I took the http4s g8 template, set it up with Scala 3.1.0, added sbt native-image, started the nativeImageRunAgent and ran a single request against GET /joke. After stopping the server, the native-image run agent generated the reflective configs that are required for this path of execution. Comparing the generated Scala 2.13 with the Scala 3 configs, yields a bloated version for Scala 3 that contains these additional rules:
  • Is Scala and Play Framework dying?
    5 projects | /r/scala | 8 Dec 2021
    Sbt plugin: https://github.com/scalameta/sbt-native-image
  • Native Image Compilation for A Purely Functional Example Application
    2 projects | /r/scala | 15 Aug 2021
    IIRC, the sbt-native-image plugin can abstract that away, too: https://github.com/scalameta/sbt-native-image#nativeimagerunagent https://github.com/scalameta/sbt-native-image
  • SBT error when running package application: java.lang.RuntimeException: No main class detected.
    3 projects | /r/scala | 9 Jun 2021
    Assembly, however, has some disadvantages so you may also want to look into other alternatives like sbt-native-packager. You may even want to produce a binary using sbt-native-image (which uses GraalVM under the hood) so your users do not need to install anything at all, not even a JRE.

sbt-native-packager

Posts with mentions or reviews of sbt-native-packager. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-07-11.

What are some alternatives?

When comparing sbt-native-image and sbt-native-packager you can also consider the following projects:

zio-microservice - ZIO-powered microservices via HTTP and other protocols.

sbt-assembly - Deploy über-JARs. Restart processes. (port of codahale/assembly-sbt)

sbt-pack - A sbt plugin for creating distributable Scala packages.

LogoRRR - A simple and straightforward log viewer that displays the events of interest in a clear and concise visual manner so that you can identify them faster.

coursier - Pure Scala Artifact Fetching

aws-sdk-scalajs-facade - A complete set of Scala.js type facade for aws-sdk-js

xsbt-web-plugin - Servlet support for sbt

Finatra - Fast, testable, Scala services built on TwitterServer and Finagle

sbt-jni - SBT Plugin to ease working with JNI

feral - Feral cats are homeless, feral functions are serverless

sbt-release - A release plugin for sbt