在intellij想法中找不到“jdk的有效主页”

Arp*_*rti 5 java jdk openjdk sdk

我正在尝试为 intellij 想法设置一个 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)
Run Code Online (Sandbox Code Playgroud)

我试着跑

$ whereis java

并且所有路径都无效

然后我在 usr/lib/jvm 中找到了 jvm 文件夹,这些文件夹都不起作用。

这是输出

$ ls -lh /usr/lib/jvm/

在此处输入图片说明

我刚刚运行了另一个命令

$ update-alternatives --list java
Run Code Online (Sandbox Code Playgroud)

输出是

/usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java
/usr/lib/jvm/java-9-openjdk-amd64/bin/java
Run Code Online (Sandbox Code Playgroud)

在想法中,sdk 选择器只会转到 /bin 但不会出现内部文件,并且在文件资源管理器中我可以看到 java 文件,但单击它什么也不做,也不能在出现错误时直接复制它的路径:

“找不到指定的路径”

还跑了

$ sudo update-alternatives --display java
Run Code Online (Sandbox Code Playgroud)

输出

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
Run Code Online (Sandbox Code Playgroud)

Geo*_*sen 1

您需要添加JAVA_HOME到您的.bashrc文件中。

  1. 编辑:

    gedit ~/.bashrc
    
    Run Code Online (Sandbox Code Playgroud)
  2. 添加以下行:

    ## JAVA_HOME
    export JAVA_HOME="/usr/lib/jvm/java-9-openjdk-amd64"
    export PATH=$PATH:$JAVA_HOME/bin
    
    Run Code Online (Sandbox Code Playgroud)
  3. 将其添加到/etc/environemnt文件中:

    echo "JAVA_HOME=\"/usr/lib/jvm/java-9-openjdk-amd64\"" | sudo tee -a /etc/environment
    
    Run Code Online (Sandbox Code Playgroud)
  4. 关闭并打开一个新终端。

  5. 如果一切都不起作用那么:

    1. 启动 Intellij

    2. 按:ctrl+ alt+ shift+S

      • 前往Platform Settings -> SDKs
      • 单击以添加您的路径java sdk

      在此输入图像描述

现在您的 IntelliJ 应该能够看到它。

  • 这不起作用 (3认同)

小智 0

我遇到了同样的错误,因为我更改了 jdk,而我的 Intellij 仍然引用我以前的 jdk 的位置。我所做的就是去File -> Project Structure。转到SDKs项目结构对话框中的“平台设置”下。之后,您只需导航到安装 jdk 主目录的位置即可。(对我来说,是/usr/local/jdk1.8.0_271)。Apply然后就这样做Ok。这个错误应该消失。