我尝试在使用带有 KDE 桌面的 Ubuntu 16.4 时在 intelliJ 中使用 java 9。
我发现无法在编辑器中选择我的 JDK 文件。我安装了 java 8 和 9,目前 java 9 设置为使用 java 命令运行。附注:我可以使用 jshell。
$ java -version
返回:
openjdk version "9-internal"
OpenJDK Runtime Environment (build 9-internal+0-2016-04-14-195246.buildd.src)
OpenJDK 64-Bit Server VM (build 9-internal+0-2016-04-14-195246.buildd.src, mixed mode)
这是我的$ ls -l /usr/lib/jvm
:
lrwxrwxrwx 1 root root 24 Feb 25 2016 default-java -> java-1.8.0-openjdk-amd64
lrwxrwxrwx 1 root root 20 Okt 28 00:51 java-1.8.0-openjdk-amd64 -> java-8-openjdk-amd64
lrwxrwxrwx 1 root root 20 Apr 14 2016 java-1.9.0-openjdk-amd64 -> java-9-openjdk-amd64
drwxr-xr-x 7 root root 4096 Nov 11 18:03 java-8-openjdk-amd64
drwxr-xr-x 7 root root 4096 Nov 11 18:04 java-9-openjdk-amd64
intellij 选择窗口的屏幕截图
如果我选择 java-1.8.0 并按下 OK,它会接受它作为 JDK。但是,如果我选择它下面的文件夹(包含 java-1.9.0),它会告诉我“所选目录不是 JDK 的有效主目录”如图所示。
如果我使用 java-1.9.0-openjdk-amd64 链接或 java-9-openjdk-amd64 目录,则没有什么区别。
如果它有任何意义:我使用 apt 命令安装了 openjdk。
编辑:
- 我正在使用 intelliJ IDEA 版本 2017.2.5
- 我安装了 openJDK 9:
sudo apt install openjdk-9-jdk
然后在 dpkg 中出现错误,可以使用以下方法解决sudo apt-get -o Dpkg::Options::="--force-overwrite" install openjdk-9-jdk
答案1
答案2
我找到了它;它可能不是 Ubuntu 特有的,但它与在 openjdk-9 中未正确编译的 jar(lib/jrt-fs.jar)有关。
我引用:临时解决办法可能是替代/usr/lib/jvm/java-9-openjdk-amd64/lib/jrt-fs.jar使用 Oracle JDK 中的。
替换 jar 之后,我可以毫无问题地将 SDK 添加到 IntelliJ。