eclipse中的JavaMaven项目,源/目标设置为1.8,JavaRelease14,提供了由来已久的缺失工件jdk.tools:jdk.tools:jar:1.6
这个问题已经存在至少8年了,但到目前为止还没有明确的解决方案,并且已经被多次询问,因此与不同的JDK安装和安装相关 建议的解决方案与自第10版以来的最新Java版本不再相关,因为整个编译器结构都经过了修改 旧版QA中提供的所有3种解决方案eclipse中的JavaMaven项目,源/目标设置为1.8,JavaRelease14,提供了由来已久的缺失工件jdk.tools:jdk.tools:jar:1.6,java,eclipse,maven,Java,Eclipse,Maven,这个问题已经存在至少8年了,但到目前为止还没有明确的解决方案,并且已经被多次询问,因此与不同的JDK安装和安装相关 建议的解决方案与自第10版以来的最新Java版本不再相关,因为整个编译器结构都经过了修改 旧版QA中提供的所有3种解决方案 正确设置JAVA_主页 将tools.jar添加到我的maven依赖项列表 使用正确的vm运行eclipse 似乎不再相关/工作了 我用JDK14尝试了以上3种方法,包括在pom中添加以下dep,如其他地方所述 <dependency> <
<dependency>
<groupId>jdk.tools</groupId>
<artifactId>jdk.tools</artifactId>
<scope>system</scope>
<systemPath>${java.home}/../lib/tools.jar</systemPath>
</dependency>
jdk.tools
jdk.tools
系统
${java.home}/./lib/tools.jar
当我的源/目标版本设置为1.8时,使用JDK 14及以上版本的理想解决方案是什么?理想解决方案:升级代码以使用较新的内置Java编译器。这是否意味着最新的JDK不再支持1.8?我确信,在运行JVM 14时,1.8上仍需要支持数十亿LOC,这是正确的。如果您的代码使用已删除的运行库中的功能,如Java 11中的JAXB和JavaScript是Java 15,那么如果您不将这些功能作为第三方库重新添加,代码将无法运行,这对于JAXB和Nashorn来说都很容易。如果您是为Java 8编译的,那么在项目中使用Java 8 JDK就简单多了。仅仅因为Eclipse本身在一个较新的Java上运行并不意味着您不能在项目中使用较旧的Java。-请参阅项目属性和已安装的JREs首选项页面。这不是工具链文件的用途吗?