当我在Eclipse Oxygen
中打开工作区时,默认编译器合规性级别设置为9
。我在Preferences > Java > Compiler
中将其更改回1.8
,然后点击应用。它有效,直到我关闭Eclipse并重新打开它,现在它回到9
。我怎样才能改变这个变化?
注意:
我知道/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.compliance
设置为9,但我无法找到它的位置。
答案 0 :(得分:1)
我无法复制合规性更改的问题,而不是在重新启动时保持不变,但您可以手动设置它们而不是使用Eclipse的GUI。要做到这一点:
找到您的偏好文件。这是一个文本文件,其中包含您通常使用 Window>在Eclipse中分配的许多设置。偏好设置即可。该文件将位于 .metadata 目录中的工作区目录中,名称如下:
<强> .metadata.plugins \ org.eclipse.core.runtime.settings \ org.eclipse.jdt.core.prefs 强>
在文本编辑器中打开文件 org.eclipse.jdt.core.prefs ,然后编辑以下三行:
org.eclipse.jdt.core.compiler.codegen.targetPlatform = 9
org.eclipse.jdt.core.compiler.compliance = 9
org.eclipse.jdt.core.compiler.source = 9
这种方法对我有用。但是,即使这种方法可以解决您的问题,您仍然可以raise a Bug Report with Eclipse,因为不需要手动编辑首选项文件。
答案 1 :(得分:1)
我的工作区设置被~/.eclipse/org.eclipse.oomph.setup/setups/user.setup
中存储的用户特定设置覆盖。具体来说,该文件包含以前安装的剩余设置行:
<setupTask
xsi:type="setup:PreferenceTask"
key="/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.codegen.targetPlatform"
value="9"/>
<setupTask
xsi:type="setup:PreferenceTask"
key="/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.compliance"
value="9"/>
<setupTask
xsi:type="setup:PreferenceTask"
key="/instance/org.eclipse.jdt.core/org.eclipse.jdt.core.compiler.source"
value="9"/>
</setupTask>
<强>解决方案:强>
从~/.eclipse/org.eclipse.oomph.setup/setups/user.setup
删除上面的行。
注意:强> 感谢@skomisa帮助我解决这个问题。