我正在LinuxMint18.2上使用Intellij 2017.2.5,并试图添加新的openjdk-9 OpenJDK-9SDK,但IDEA不接受openjdk 9作为有效的JDK:

我已经使用apt从ppa标准存储库安装了我的所有SDK。
这是我的update-alternatives --config java/javac输出:

虽然Intellij宣称它将支持JDK 9 这里,但它似乎还没有完全兼容至少opensdk-9。
也许重构SDK目录和删除'jre‘文件夹会误导查找SDK 9主文件夹的想法。
知道为什么Intellij声称‘所选目录不是JDK的有效主页’吗?
发布于 2017-10-06 08:49:45
目前,openjdk-9(9~b115-1ubuntu1).的“Ubuntu for OpenJDK”已经很老了。
因此,这个想法不承认它是一个有效的SDK。
我删除了当前安装的版本:
sudo apt-get remove '^openjdk-9.*'
然后我下载了更新的.deb构建(9~b 181)文件,包括jre,jre- have,.来自发射台构建存档。
sudo dpkg -i openjdk-9-jre-headless_9_b181-4_amd64.deb
openjdk-9-jre_9_b181-4_amd64.deb
openjdk-9-jdk-headless_9_b181-4_amd64.deb
openjdk-9-jdk_9_b181-4_amd64.deb只需在一行中执行上述命令,换行就可以获得更好的可读性。
忽略任何抱怨以下错误的错误:
“未安装libpng16-16软件包。”
接下来,执行以下操作:
sudo apt-get install -f现在,在安装了openjdk-9的这个构建之后,这个想法对SDK主页很满意。
感谢@y.bedrov的有益评论。
更新:但是,这个解决方案使您能够在上述IDEA版本(2017-2)中声明openjdk-9,但是您无法在IDEA本身中编译任何类。您只能使用老jdk编译您的应用程序,并使用openjdk-9运行它。还有另一个问题表示此这里。
在更新的IDEA版本(我已经测试了2017.3)中,openjdk的构建不再允许作为新的SDK使用,请参阅本期。
原因很短,这是Debian包中的一个问题,它包含错误编译的lib/jrt-fs.jar文件。
https://stackoverflow.com/questions/46563992
复制相似问题