java - mvn -install 期间编译错误

标签 java maven

我尝试了 mvn install 和 mvn clean install 并且它们都抛出了相同的错误:

[Error] *dir/class.java* try-with-resources is not supported in -source 1.5

这是我的环境信息:

Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /opt/maven
Java version: 1.8.0_77-debug, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.77-0.b03.el6_7.x86_64-debug/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "2.6.32-431.23.3.el6.x86_64", arch: "amd64", family: "unix"

是否是因为maven运行在java 1.5而不是1.8上?如果是这样,有没有方法可以更改maven使用的版本?

最佳答案

如果您使用仅在特定 Java 版本中可用的 Java 功能,您应该在 pom.xml 中声明它

<properties>
    <maven.compiler.source>1.7</maven.compiler.source>
    <maven.compiler.target>1.7</maven.compiler.target>
    ...
</properties>

当您运行 mvn 时,相应的 JDK 应该位于 PATH 中。

例如

JDK_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.77-0.b03.el6_7.x86_64-debug/
export PATH=${JDK_HOME}/bin:${PATH}
mvn <your_maven_parameters>

关于java - mvn -install 期间编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37782829/

相关文章:

java - ElasticsearchRepository中的FindAllByColumn(List <String> columnValues)无法正常工作

java - 运行 mvn package 时出现 NoClassDefFoundError ArchiverException

maven - SonarQube:如何分析曾经是另一个项目子模块的项目?

java - 如何修复错误 "reading .m2\repository\junit\junit\4.8.2\junit-4.8.2.jar"并使用 Java 6 进行编译?

java - 如何使用 maven 创建基于 spring 的可执行 jar?

java - 如何在第 3 方依赖项中创建 Maven 子依赖项 "provided"?

Java 8 : How to create a ZonedDateTime from an Epoch value?

java - 为 Shoe 类创建 UML 图

Java 8, lambda : Sorting within grouped Lists and merging all groups to a list

java - 何时创建新的 EntityManager