“适用于 OpenJDK 的 Ubuntu PPA”目前有非常旧的 openjdk-9 版本(9~b115-1ubuntu1).
所以IDEA不会将其识别为有效的SDK。
我删除了当前安装的版本:
sudo apt-get remove '^openjdk-9.*'
然后我下载了更新的 .deb build(9~b181) 文件,包括 jre、jre-headless...启动板构建存档.
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 后,IDEA 对 SDK home 感到满意。
Thanks @y.bedrov感谢他的有用评论。
Update:然而,这个解决方案允许您在提到的 IDEA 版本(2017-2)中声明 openjdk-9,但您无法在 IDEA 本身中编译任何类。
您只能使用旧版 jdk 编译应用程序并使用 openjdk-9 运行它。还有一个问题表明了这一点here.
在较新的 IDEA 版本中(我已经测试过 2017.3),此版本的 openjdk 不再允许用作新的 SDK,请参阅这个问题.
简短的原因是 Debian 软件包中的一个问题,其中包含错误编译的 lib/jrt-fs.jar 文件。
请参阅此答案以获取更多信息