A Giter8 template for native-image-producing JRE-less scala-sbt starter code for usage with sbt new
For more information (quite a lot of information) about what's included in this quickstart, refer to /src/main/g8/README.md.
This information will come along with the template, so you may just want to get on with that.
# sbt < 1.3.0
sbt new sbchapin/quickstart-scala-sbt-native-image.g8
# sbt >= 1.3.0 (https://github.com/sbt/sbt/issues/5063)
sbt --supershell=false new sbchapin/quickstart-scala-sbt-native-image.g8
Execute the preceding sbt
command wherever you want to start a new scala-sbt project. It will create a new folder in your active directory.
It will ask you four questions:
name
- will be formatted to the correct type in necessary places (META-INF, packages, README...)organization
- must be in the reverse-namespace format.package
- must be in the reverse-namespace format (will default to the last two fields intelligently.)maintainer
- include name and email for docker and scala artifacts.
sbt
1.x or higher (or an older sbt with giter8 plugin configured)- little-to-no understanding of giter8 or sbt new
# Fork it: (https://blog.scottlowe.org/2015/01/27/using-fork-branch-git-workflow/)
# ...then...
# Get your fork:
git clone [email protected]:{YOUR_NAME_HERE}/quickstart-scala-sbt-native-image.g8.git
cd quickstart-scala-sbt-native-image.g8
git remote add upstream [email protected]:sbchapin/quickstart-scala-sbt-native-image.g8.git
# Test it continuously: (will extract the project then run tests inside extracted project)
sbt ~test
# Change it:
git checkout -b cool-feature-branch
echo 'Sam sucks' >> README.md
git commit -am 'Stating the evident'
# Test it one last time:
sbt test
# Push it:
git push origin cool-feature-branch
# Pull request it:
# https://github.com/sbchapin/quickstart-scala-sbt-native-image.g8/pulls
- Keep this baby up to date
- More robust examples of the existing libraries
- CI & CD Integrations
This template is distributed without any warranty and dedicated to public domain under the CC0 1.0 Universal (CC0 1.0) Public Domain Dedication license.