【发布时间】:2020-07-18 01:50:19
【问题描述】:
我以前可以调用sbt dist 将我的游戏应用程序打包成二进制文件,但是(在进行了很多更改之后)当我尝试它时,它只是默默地存在,没有给出任何错误或生成二进制文件。这是使用-verbose 和-d(调试)运行时的完整输出:
$ sbt dist
[addSbt] arg = '-debug'
[residual] arg = '-sbt-create'
[residual] arg = 'dist'
[residual] arg = '-XX:MaxPermSize=50G'
[residual] arg = '-Xmx50G'
[residual] arg = 'dist'
[process_args] java_version = '14'
[sbt_options] declare -a sbt_options=()
[addMemory] arg = '1024'
[addJava] arg = '-Xms1024m'
[addJava] arg = '-Xmx1024m'
[addJava] arg = '-Xss4M'
[addJava] arg = '-XX:ReservedCodeCacheSize=128m'
[copyRt] java9_rt = '/home/ali/.sbt/0.13/java9-rt-ext-adoptopenjdk_14_0_1/rt.jar'
[addJava] arg = '-Dscala.ext.dirs=/home/ali/.sbt/0.13/java9-rt-ext-adoptopenjdk_14_0_1'
# Executing command line:
java
-Dfile.encoding=UTF-8
-Xms1024m
-Xmx1024m
-Xss4M
-XX:ReservedCodeCacheSize=128m
-Dscala.ext.dirs=/home/ali/.sbt/0.13/java9-rt-ext-adoptopenjdk_14_0_1
-jar
/home/ali/.sdkman/candidates/sbt/1.3.13/bin/sbt-launch.jar
-debug
-XX:MaxPermSize=50G
-Xmx50G
dist
[debug] Full compilation, no sources in previous analysis.
[debug] Copy resource mappings:
[debug]
[debug] Other repositories:
[debug] Default repositories:
[debug] Using inline dependencies specified in Scala.
[debug] Full compilation, no sources in previous analysis.
[debug] Copy resource mappings:
[debug]
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
$
然后它就存在了,我回到了 shell,并且没有生成二进制文件。相比之下,我以前经常看到像inflating xxx.yyy.zzz 这样的消息。
当我运行 sbt clean compile 时会发生同样的事情:
[debug] Full compilation, no sources in previous analysis.
[debug] Copy resource mappings:
[debug]
[debug] Other repositories:
[debug] Default repositories:
[debug] Using inline dependencies specified in Scala.
[debug] Full compilation, no sources in previous analysis.
[debug] Copy resource mappings:
[debug]
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
[debug] Checking for meta build source updates
然后又退出了,没有报错。
我怎样才能让 sbt 显示某种错误,表明它为什么不生成二进制文件?
使用:
scalaVersion := "2.13.2"
sbt.version=1.3.12
并播放 2.8.2
【问题讨论】:
-
从我的
.sbtopts文件中删除这两行修复了问题:-XX:MaxPermSize=50G和-Xmx50G。如果有人知道为什么这些行会导致此问题,请发帖,我会接受您的回答。很想知道他们为什么会出现问题。
标签: scala playframework sbt