我有2个sbt-android-scala项目。第一个是单一的:
$ ls -al
drwxr-xr-x 13 alex staff 442 Dec 24 20:44 .
drwxr-xr-x 4 alex staff 136 Dec 24 21:08 ..
drwxr-xr-x 12 alex staff 408 Dec 24 20:38 .git
-rw-r--r-- 1 alex staff 141 Dec 24 20:38 .gitignore
-rw-r--r-- 1 alex staff 115 Dec 24 20:38 .travis.yml
-rw-r--r-- 1 alex staff 664 Dec 24 20:38 CHANGES
-rw-r--r-- 1 alex staff 1418 Dec 24 20:38 LICENSE
-rw-r--r-- 1 alex staff 2491 Dec 24 20:38 README.md
-rw-r--r-- 1 alex staff 874 Dec 24 20:38 build.sbt
drwxr-xr-x 10 alex staff 340 Dec 24 20:38 notes
drwxr-xr-x 5 alex staff 170 Dec 24 20:43 project
drwxr-xr-x 3 alex staff 102 Dec 24 20:38 src
drwxr-xr-x 5 alex staff 170 Dec 25 01:17 target
第二个有子项目:
$ ls -al
drwxr-xr-x 23 alex staff 782 Dec 24 21:57 .
drwxr-xr-x 4 alex staff 136 Dec 24 21:08 ..
drwxr-xr-x 13 alex staff 442 Dec 24 21:57 .git
-rw-r--r-- 1 alex staff 44 Dec 24 21:57 .gitignore
-rw-r--r-- 1 alex staff 203 Dec 24 21:57 .gitmodules
-rw-r--r-- 1 alex staff 46 Dec 24 21:57 .sbtopts
-rw-r--r-- 1 alex staff 55 Dec 24 21:57 .sbtrc
-rw-r--r-- 1 alex staff 35119 Dec 24 21:57 LICENSE.md
-rw-r--r-- 1 alex staff 6964 Dec 24 21:57 README.md
-rw-r--r-- 1 alex staff 30626 Dec 24 21:57 RELEASE-NOTES.md
drwxr-xr-x 18 alex staff 612 Dec 24 21:57 my_prj1
-rw-r--r-- 1 alex staff 892 Dec 24 21:57 build.sbt
drwxr-xr-x 11 alex staff 374 Dec 24 21:57 common
drwxr-xr-x 11 alex staff 374 Dec 24 21:57 my_prj2
drwxr-xr-x 3 alex staff 102 Dec 24 21:57 my_prj3
drwxr-xr-x 7 alex staff 238 Dec 24 22:01 project
当我在第一个项目中运行sbt
时,它编译得很好,与第二个项目不同:
$ sbt
No java installations was detected.
Please go to http://www.java.com/getjava/ and download
但是
$ echo $JAVA_HOME
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
答案 0 :(得分:7)
我因为完全不同的原因而失败了:我有GREP_OPTIONS="--color=always"
所以sbt
无法正确确定我的Java版本(它将grep
输出sed
输出到{ {1}}等等)。从我的环境中删除GREP_OPTIONS
解决了这个问题。
答案 1 :(得分:1)
如果您的 ${JAVA_HOME}
在 根路径 中配置,我认为您应该获得root权限。例如 /根/ JAVA / JDK 强>
答案 2 :(得分:0)
我刚才出现了同样的问题。当我执行java -version
时,返回了以下错误:
Error occurred during initialization of VM
Could not reserve enough space for object heap
事实证明,Eclipse正在消耗所有可用内存,而我无法启动另一个JVM。因此,我退出了Eclipse,一切正常,很好。
答案 3 :(得分:0)
我刚刚在Ubuntu遇到了同样的问题。在我的情况下,它是由我的JAVA_TOOL_OPTIONS中的设置引起的:
JAVA_TOOL_OPTIONS = -Djavax.net.ssl.trustStore =
答案 4 :(得分:0)
我再次尝试安装java,apt告诉我做一个--fix-broken,解决了这个问题,不需要重新安装java: sudo apt --fix-broken 安装
答案 5 :(得分:-1)
您的.sbt文件中的任何一个文件配置错误都会导致错误。你可以尝试重命名它们,它可以解决你的问题。