Spring 工具套件 IDE

Spring tool suite IDE

我正在使用 spring 工具套件 IDE。我导入了一个 spring 项目。在 运行 项目之后,我得到错误 Fatal error 编译:tools.jar 未找到:C:\Program Files\Java\jre8\..\lib\tools.jar。我试图在首选项选项中使用 JDK 的路径。但随后显示另一个错误,因为源代码 1.5 不支持菱形运算符。我正在使用 JDK 8 和 STS 3.6.3。谁能帮我解决这个错误?

对于该项目,右键单击 -> 属性 -> Project Facets -> 将 java 版本更改为 Java 1.7。

在 1.7 中引入了菱形运算符(空“<>”)。

在启动配置向导中检查 Java 版本。右键单击项目 运行 As -> 运行 Configurations... 然后在左侧的资源管理器中 select 项目的启动配置并检查右侧 JRE 选项卡的内容。 也去 Preferences -> Java -> Compiler,确保 Compiler Compliance Level 至少达到 1.7。

I get error as Fatal error compiling: tools.jar not found: C:\Program Files\Java\jre8..\lib\tools.jar.

像您一样尝试使用 JDK 而不是 JRE 是解决此错误的正确做法。

But then it shows another error as diamond operator is not supported in source 1.5.

可以使用 Java 8 作为运行时,但使用 Java 5 作为源 and/or 目标级别进行编译。这实际上与所选运行时无关。

如果您想在代码中使用“<>”运算符,请检查您是否 select 至少达到 Java 7 'source' 和 'target' 级别。可以通过右键单击您的项目并转到 'Properties >> Java Compiler'.

来找到此设置

您可以在那里更改这些设置...但是...根据您项目的设置,这可能不是最好的主意。例如,如果您的项目是 Maven 项目,那么您应该通过 Maven 编译器的插件配置编译器设置,如下所示:

http://maven.apache.org/plugins/maven-compiler-plugin/examples/set-compiler-source-and-target.html

如果您直接在 Eclipse 的 UI 中更改设置,这些设置可能会在 Maven 更新您的项目后立即丢失。