Why does sbt report “No java installations was det

2020-04-10 18:50发布

问题:

I have 2 sbt-android-scala projects. The first one is a single one:

$ 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

The second one has sub-projects in it:

    $ 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

When I run sbt in the 1st project, it compiles well, unlike in the 2nd one:

$ sbt

No java installations was detected.
Please go to http://www.java.com/getjava/ and download

But

$ echo $JAVA_HOME
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

回答1:

It appears that either of your .sbt files are misconfigured resulting in an error. Can you try renaming them and it could fix your problem.



回答2:

I had it failing for completely different reason: I had GREP_OPTIONS="--color=always" so sbt couldn't properly determine my Java version (it's piping grep output to sed and so on). Removing GREP_OPTIONS from my environment solved the issue.



回答3:

I think you should get the root authority if your ${JAVA_HOME} is configured in root path.such as /root/java/jdk.



回答4:

I just had the same issue appear out of nowhere. When I executed java -version, the following error was returned:

Error occurred during initialization of VM
Could not reserve enough space for object heap

It turned out that Eclipse was consuming all of the available memory and that I could not start another JVM. Thus, I exited Eclipse, and everything works, fine.



回答5:

I just ran into the same problem on Ubuntu. In my case, it was caused by a setting in my JAVA_TOOL_OPTIONS:

JAVA_TOOL_OPTIONS=-Djavax.net.ssl.trustStore=