sbt 执行
只需要下载一个jar sbt-launch.jar就可以使用,使用时创建/执行以下内容的 bat文件, sbt.bat
SBT_OPTS="-Xms512M -Xmx1536M -Xss1M -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
java $SBT_OPTS -jar sbt-launch.jar "$@"
sbt默认启动配置说明
sbt-launch.jar包中自带sbt/sbt.boot.properties描述文件,默认将在
....
[boot]
directory: ${sbt.boot.directory-${sbt.global.base-${user.home}/.sbt}/boot/}
↑用户/.sbt下生成sbt运行时boot文件
[ivy]
ivy-home: ${sbt.ivy.home-${user.home}/.ivy2/} <--- 用户/.ivy2下生成类似maven的m2的仓库缓存目录.
checksums: ${sbt.checksums-sha1,md5}
override-build-repos: ${sbt.override.build.repos-false}
repository-config: ${sbt.repository.config-${sbt.global.base-${user.home}/.sbt}/repositories}
...
官方说明:http://www.scala-sbt.org/release/docs/Detailed-Topics/Launcher.html
自定义sbt.boot.propertie
[scala]
version: ${sbt.scala.version-auto}
[app]
org: ${sbt.organization-org.scala-sbt}
name: sbt
version: ${sbt.version-read(sbt.version)[0.12.2]}
class: ${sbt.main.class-sbt.xMain}
components: xsbti,extra
cross-versioned: ${sbt.cross.versioned-false}
[repositories]
local
maven-local
typesafe-ivy-releases: http://repo.typesafe.com/typesafe/ivy-releases/, [organization]/[module]/[revision]/[type]s/[artifact](-[classifier]).[ext]
maven-central
sonatype-snapshots: https://oss.sonatype.org/content/repositories/snapshots
[boot]
directory: E:/play-2.1.0/framework/sbt/boot
[ivy]
ivy-home: E:/play-2.1.0/repository
checksums: ${sbt.checksums-sha1,md5}
override-build-repos: ${sbt.override.build.repos-false}
repository-config: ${sbt.repository.config-${sbt.global.base-${user.home}/.sbt}/repositories}
sbt.bat 写法
fp= <你的定义文件目录>
java -Dsbt.boot.properties="%fp%sbt.boot.properties" -Dsbt.log.noformat=true -XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256m -Xmx512M -Xss2M -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005 -jar "%p%\sbt-launch-0.12.3.jar" %*
附录:
自带sbt的项目(以playframework为例)
sbt使用ivy(与maven类似)做管理库
ivy本地缓存路径设置
resolvers ++= Seq(
"Local Play Repository" at "file://E:/play-2.1.0/repository"
)
或者
resolvers += "Local Maven Repository" at "file://"+Path.userHome.absolutePath+"/.m2/repository"
执行时指定
sbt -Dsbt.ivy.home=E:/play-2.1.0/repository