Building Tool: SBT
sbt scalastyle
sbt dependencyTree > tree.log
Build thin jar
# cd to project root dir sbt package
Build fat jar(with all dependencies) for Spark Application
# on Linux, MACOS sbt "-DprovidedDeps=true" clean assembly # on Windows set JAVA_TOOL_OPTIONS='-Dfile.encoding=UTF8' sbt package
Package Distribution
# on Linux, Mac sbt "-DprovidedDeps=true" universal:packageBin # on Windows set JAVA_TOOL_OPTIONS='-Dfile.encoding=UTF8' sbt "-DprovidedDeps=true" universal:packageBin # When packaging finished, you can find distribution here: target/universal/waterdrop-<version>.zip
If you want to check what files/directories will be included distribution package
sbt "-DprovidedDeps=true" stage ls ./target/universal/stage/
check sbt native packager universal plugin for more details.
File -> Project Structure -> Modules, in Sources
Tab,
select module waterdrop-core
, then mark directory target/scala-2.11/src_managed/main/antlr4/
as Sources Root
(blue icon)
If you don't have
target/scala-2.11/src_managed/main/antlr4/
directory, you can create this directory, or executesbt package
in command line first.
# Linux, Mac export JAVA_OPTS=-Xmx4G sbt ... # Windows set JAVA_OPTS=-Xmx4G sbt ...
The coding style is defined in scalastyle-config.xml
in this project root dir. When you are using Intellij IDEA, you can install scalafmt plugin to auto-format code style. Then you should check “Format on file save” in scalafmt configuration(in preferences or settings).