为什么Intellij IDEA无法识别我的Java JDK

4

重启并清除缓存

这是我的配置

cat /etc/environment 
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
JAVA_HOME="/lib/jvm/java-7-oracle/jre/bin/java"

~$whereis java
java: /usr/bin/java /usr/bin/X11/java /usr/share/java /usr/share/man/man1/java.1.gz
~$ which java
/usr/bin/java


~$ ls -l /usr/bin/java
lrwxrwxrwx 1 root root 22 Aug 23 14:40 /usr/bin/java -> /etc/alternatives/java
~$ ls -l /etc/alternatives/java
lrwxrwxrwx 1 root root 39 Aug 23 14:40 /etc/alternatives/java -> /usr/lib/jvm/java-7-oracle/jre/bin/java

我阅读了这篇文章来生成上面的输出。我在Hello.java文件中不断收到红色的Intellij IDEA图标,其中包含以下内容:

public class Hello {
    public static void main(String[] args){
        System.out.println("Hello World");
    }
}

尽管成功地在命令行中运行该程序,如下所示:

$ javac Hello.java 
$ java Hello 
Hello World

以下是在Intellij IDEA设置中设置的Java SDK路径 (Ctrl+Alt+Shift+S):/usr/lib/jvm/java-7-oracle

以下是我的目录(名为Hello)中的内容 Hello.iml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
  <component name="NewModuleRootManager" inherit-compiler-output="true">
    <exclude-output />
    <content url="file://$MODULE_DIR$">
      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
    </content>
    <orderEntry type="jdk" jdkName="1.7 (1)" jdkType="JavaSDK" />
    <orderEntry type="sourceFolder" forTests="false" />
  </component>
</module>

我之前通过这个链接移除了所有JDK实例,并确认只安装了一个Java JDK。我通过这个链接重新安装了Java。
我到底做错了什么?请给予任何见解。谢谢。

打开项目设置并告诉IntelliJ要使用哪个JDK。根据您的描述,应该只有一个。 - duffymo
请注意,我还必须删除我的Hello.java文件,并左键单击重新插入为“Java类”。 - phillipsK
1个回答

5
在IntelliJ中,您需要设置项目要使用的JDK。这与默认情况下选择JDK的Eclipse不同。但是,您可以更灵活地拥有使用不同JDK(例如1.5、1.7、1.8等)的多个项目。
请按照此处的说明操作:如何更改IntelliJ IDEA默认的JDK?

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接