本文主要是介绍docker 内sbt安装,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
安装
准备安装1.0
1) 官网安装方式 ubuntu和其他debian的发行版
echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2EE0EA64E40A89B84B2DF73499E82A75642AC823
sudo apt-get update
sudo apt-get install sbt
2) 手动安装
Sbt-launch.jar 地址 https://repo1.maven.org/maven2/org/scala-sbt/sbt-launch/1.0.0-M4/sbt-launch.jar
手动安装需要下载 sbt-launch.jar,然后创建脚本来运行它。
Unix
将 sbt-launch.jar 文件放在 ~/bin 下。 创建一个脚本来运行这个 jar,脚本 ~/bin/sbt 内容如下:
#!/bin/bash
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar `路径名 $0`sbt-launch.jar "$@" (官网sbt-lanunch.jar前有斜杠,但是出现错误,所以给去掉了)
给该脚本赋予可执行权限:
$ chmod u+x ~/bin/sbt
结果:
root@master:/usr/local/sbt# vim sbt
root@master:/usr/local/sbt# ./sbt
./sbt: line 3: /usr/local/sbt/: Is a directory
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
Getting org.scala-sbt sbt 1.0.0-M4 ...
downloading https://repo1.maven.org/maven2/org/scala-sbt/sbt/1.0.0-M4/sbt-1.0.0-M4.jar ...[SUCCESSFUL ] org.scala-sbt#sbt;1.0.0-M4!sbt.jar (1088ms)
root@master:/usr/local/sbt# sbt version
/usr/local/sbt/sbt: line 3: /usr/local/sbt/: Is a directory
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0
[info] Set current project to sbt (in build file:/usr/local/sbt/)
[info] 0.1-SNAPSHOT
root@master:/usr/local/sbt# sbt --help
/usr/local/sbt/sbt: line 3: /usr/local/sbt/: Is a directory
OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=256M; support was removed in 8.0help Displays this help message or prints detailed help on requested commands (run 'help <command>').completions Displays a list of completions for the given argument string (run 'completions <string>').about Displays basic information about sbt and the build.tasks Lists the tasks defined for the current project.settings Lists the settings defined for the current project.reload (Re)loads the current project or changes to plugins project or returns from it.projects Lists the names of available projects or temporarily adds/removes extra builds to the session.project Displays the current project or changes to the provided `project`.set [every] <setting> Evaluates a Setting and applies it to the current project.session Manipulates session settings. For details, run 'help session'.inspect [uses|tree|definitions] <key> Prints the value for 'key', the defining scope, delegates, related definitions, and dependencies.<log-level> Sets the logging level to 'log-level'. Valid levels: debug, info, warn, errorplugins Lists currently available plugins.; <command> (; <command>)* Runs the provided semicolon-separated commands.~ <command> Executes the specified command whenever source files change.last Displays output from a previous command or the output from a specific task.last-grep Shows lines from the last output for 'key' that match 'pattern'.export <tasks>+ Executes tasks and displays the equivalent command lines.exit Terminates the build.--<command> Schedules a command to run before other commands on startup.show <key> Displays the result of evaluating the setting or task associated with 'key'.all <task>+ Executes all of the specified tasks concurrently.More command help available using 'help <command>' for:!, +, ++, <, alias, append, apply, eval, iflast, onFailure, reboot, shell[info] Set current project to sbt (in build file:/usr/local/sbt/)
> tasksThis is a list of tasks defined for the current project.
It does not list the scopes the tasks are defined in; use the 'inspect' command for that.
Tasks produce values. Use the 'show' command to run the task and print the resulting value.clean Deletes files produced by the build, such as generated sources, compiled classes, and task caches.compile Compiles sources.console Starts the Scala interpreter with the project classes on the classpath.consoleProject Starts the Scala interpreter with the sbt and the build definition on the classpath and useful imports.consoleQuick Starts the Scala interpreter with the project dependencies on the classpath.copyResources Copies resources to the output directory.doc Generates API documentation.package Produces the main artifact, such as a binary jar. This is typically an alias for the task that actually does the packaging.packageBin Produces a main artifact, such as a binary jar.packageDoc Produces a documentation artifact, such as a jar containing API documentation.packageSrc Produces a source artifact, such as a jar containing sources and resources.publish Publishes artifacts to a repository.publishLocal Publishes artifacts to the local Ivy repository.publishM2 Publishes artifacts to the local Maven repository.run Runs a main class, passing along arguments provided on the command line.runMain Runs the main class selected by the first argument, passing the remaining arguments to the main method.test Executes all tests.testOnly Executes the tests provided as arguments or all tests if no arguments are provided.testQuick Executes the tests that either failed before, were not run or whose transitive dependencies changed, among those provided as arguments.update Resolves and optionally retrieves dependencies, producing a report.More tasks may be viewed by increasing verbosity. See 'help tasks'.
最后结果 还是用0.13的版本吧,1.x的版本的交互式不大会用,挺麻烦的
下载
1. http://www.scala-sbt.org/download.html
2. 上传到docker 中的容器中
3. 解压到/usr/local/sbt/ (如果没有就创建该文件夹)
4. 在该目录下创建sbt文件
a. 输入
b.
5. 修改~/。bashrc文件
a.
b. 使~/.bashrc生效 source ~/.bashrc
6. 输入./sbt sbt-version 下载相关依赖
7. 下载完成后,在工程目录使用/usr/local/sbt/sbt package 打包成jar文件
这篇关于docker 内sbt安装的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!