IntelliJ IDEA终端java版本问题

时间:2015-08-05 12:49:42

标签: java intellij-idea javac

我在IntelliJ IDEA编译器设置中遇到了一些问题。 我安装了JDK 8,其中一个想法只适用于JDK 6。

我在首选项中改变了想法中的编译器版本 - > Java Compiler页面并重新启动了想法。

Javac in Preferences

我面临的问题是,在构思终端上,版本没有得到更新。除了在.profile中设置JAVA_HOME之外还有什么方法可以解决这个问题吗?

java version

4 个答案:

答案 0 :(得分:1)

我会说它按预期工作。您仅更改了IntelliJ IDEA的编译器版本,因此它会影响IntelliJ IDEA中的编译过程。此设置不会(也不应该)影响您的终端会话环境。您可以在File -> Settings -> Tools -> Terminal -> Shell path中更改shell启动参数。由于可以根据项目设置此设置(但不是每个模块,据我所知),您可以在那里指定项目特定的设置。我不确定是否可以在那里传递一些项目特定的变量,你可能需要对参数进行硬编码,但在简单的情况下,它可以改变,比如说,让我们说,{ {1}}(在我的Windows计算机上)或cmd.exe /k echo WELCOME的类似内容。

答案 1 :(得分:0)

简而言之:你正在看两件不同的事情。

IntelliJ中的终端实际上​​是一个操作系统终端;它将在您的“路径”中查找java可执行文件(在Windows上用%PATH%表示,或在* nix上用$PATH表示。

另一方面,屏幕截图中显示的设置描述了应为项目生成何种类型的编译字节码。 Java编译器可以为早期版本的Java VM生成字节码。在这种情况下,您要求IntelliJ使用的Java编译器生成可以在Java 6 VM上运行的代码,无论使用哪个版本的Java来运行IntelliJ本身。

答案 2 :(得分:0)

IDE中的编译器版本与终端使用的编译器版本无关。

我建议在你的.bashrc中创建一个函数,只需导出相关的路径就可以在jdk6和jdk8之间切换。

然后在需要时,您只需从终端调用该函数(无论是否在IDE内)并切换到相应的jdk。

答案 3 :(得分:0)

是的,您可以在“首选项”>“工具”>“终端”>“环境变量”中进行设置。 Setting JAVA_HOME in Terminal Preferences

此设置适用于当前项目。因此,您可以为每个项目设置不同的值。

一个警告是,每当您修改项目的JDK(尤其是主要版本的升级)时,您都必须记住要对其进行更新。