java - Maven 和 Java 版本设置——哪个解决方案更好?

标签 java eclipse maven

我一直在寻找解决我的 Maven 和 Eclipse JRE 版本问题的解决方案,即使我想要不同的 JRE 1.5 也以某种方式被强制添加到 Eclipse 项目中。

在我的搜索过程中,我注意到似乎有两种不同的解决方案。第一个解决方案建议使用类似下面的代码片段

<build>
    <plugins>
    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
           <source>1.6</source>
           <target>1.6</target>
        </configuration>
    </plugin>
    </plugins>
</build>

第二种解决方案建议只使用两个属性:

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

为什么有这两种可能的解决方案以及它们为什么不同?

最佳答案

有很长的方式来指定它(通过在 pom 文件中定义 <plugin> 配置),这是配置插件的正常方式,并且有一种使用用户属性的简写方式。

如您在文档中所见。

The -source argument for the Java compiler. Default value is: 1.5.

User property is: maven.compiler.source.

如果您只想指定源和目标级别,则没有区别,但是<plugin>配置还允许您指定其他配置设置、限制编译器插件的版本等。

关于java - Maven 和 Java 版本设置——哪个解决方案更好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24551558/

相关文章:

Maven project.build.testSourceDirectory 属性在配置文件中不起作用

java - 从 Docker 容器中的 maven Quarkus 项目的资源文件夹中读取 txt 文件

java - 使用@Parameter 注解或ITestContext 读取TestNG 配置文件?

java - servlet中的编码问题

java - 无法在 Eclipse Neon 中使用 TextInputDialog

java - "System library (added to the boot class path)"在Eclipse中意味着什么?

java - 在不执行 SPRING AOP 的建议之前

java - AspectJ 错误 : Could not find or load main class aop.

java - 确定两个事件中哪一个更接近?

Android actionbarsherlock 应用程序在启动时崩溃 : Unable to resolve superclass