backend developments

After many attempts to get the best uber-jar possible with sbt, I have eventually found that it is much easier to use sbt-native-packager

It can be added through an sbt plugin in project/plugins.sbt file:

addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.2.0-M9")

and enabled in build.sbt file:

enablePlugins(JavaAppPackaging)

Creating a package complete with shell script is as easy as running the sbt command:

sbt universal:packageZipTarball

This file can then be uploaded to the server, unzipped and then the app run:

cd archiveDirectory
./bin/app_name