我正在尝试为 intellij idea 设置一个 SDK,但正如错误所指出的那样,我找不到 jdk 的主页。
在终端中我得到了以下信息
$ 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)
我试着跑
$ whereis java
并且所有路径均无效
然后我发现 usr/lib/jvm 中的 jvm 文件夹也不起作用。
这是输出
$ ls -lh /usr/lib/jvm/
我刚刚运行了另一个命令
$ update-alternatives --list java
输出为
/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
/usr/lib/jvm/java-9-openjdk-amd64/bin/java
在 idea 中,sdk 选择器只会转到 /bin,但内部文件不会出现,并且在文件资源管理器中我可以看到 java 文件,但单击它没有任何反应,我也不能直接复制它的路径,因为我收到错误:
“找不到指定的路径”
还跑了
$ sudo update-alternatives --display java
输出
java - auto mode
link best version is /usr/lib/jvm/java-9-openjdk-amd64/bin/java
link currently points to /usr/lib/jvm/java-9-openjdk-amd64/bin/java
link java is /usr/bin/java
slave java.1.gz is /usr/share/man/man1/java.1.gz
/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java - priority 1081
slave java.1.gz: /usr/lib/jvm/java-8-openjdk-amd64/jre/man/man1/java.1.gz
/usr/lib/jvm/java-9-openjdk-amd64/bin/java - priority 1091
slave java.1.gz: /usr/lib/jvm/java-9-openjdk-amd64/man/man1/java.1.gz
答案1
您需要将其添加JAVA_HOME
到您的.bashrc
文件中。
編輯:
gedit ~/.bashrc
添加以下行:
## JAVA_HOME export JAVA_HOME="/usr/lib/jvm/java-9-openjdk-amd64" export PATH=$PATH:$JAVA_HOME/bin
使用以下命令将其添加到
/etc/environemnt
文件中:echo "JAVA_HOME=\"/usr/lib/jvm/java-9-openjdk-amd64\"" | sudo tee -a /etc/environment
关闭并打开一个新的终端。
如果一切都不起作用那么:
现在您的 IntelliJ 应该能够看到它。
答案2
我遇到了同样的错误,因为我更改了 jdk,而我的 Intellij 仍然引用我以前的 jdk 的位置。我所做的就是转到File -> Project Structure
。转到SDKs
项目结构对话框中的平台设置下。之后,只需导航到安装 jdk 主目录的位置。(对我来说,它是/usr/local/jdk1.8.0_271
)。然后只需执行Apply
。Ok
这个错误应该会消失。
答案3
我遇到了同样的错误,因为我更改了下载文件夹(目录)。我解决了这个问题,转到“文件 -> 项目结构”和“项目设置 -> 项目”,SDK:“下载文件夹 -> jbr”。这就是我所做的一切。