Java Maven m2e强制执行自己的编译器设置-禁用

Java Maven m2e强制执行自己的编译器设置-禁用,java,eclipse,maven,m2eclipse,m2e,Java,Eclipse,Maven,M2eclipse,M2e,在启动Eclipse之后,Mven似乎将编译器设置设置为1.5,并忘记所有其他全局代码样式设置,以确保更高的代码质量 有没有办法禁用此功能?或者我可以在POM中指定所有编译器和代码样式检查吗 这很烦人,因为Ecplise无法运行应用程序,因为不允许覆盖接口的注释。Java编译器中的勾号->启用项目特定设置总是在重新启动后设置。最简单的方法是添加到POM中 <groupId>org.apache.maven.plugins</groupId> <artifactId&

在启动Eclipse之后,Mven似乎将编译器设置设置为1.5,并忘记所有其他全局代码样式设置,以确保更高的代码质量

有没有办法禁用此功能?或者我可以在POM中指定所有编译器和代码样式检查吗


这很烦人,因为Ecplise无法运行应用程序,因为不允许覆盖接口的注释。
Java编译器中的勾号
->
启用项目特定设置
总是在重新启动后设置。

最简单的方法是添加到POM中

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

其他解决方案。

您可以在pom中设置编译器源代码和目标(字节码)版本。

代码样式检查可以在pom中作为maven报告的一部分进行配置,请参见

但是我不确定集成是否会收集这些信息。

如果您不希望m2e eclipse插件主动干扰您的项目设置,请使用生成您的eclipse设置

它将根据pom中的内容生成eclipse设置,因此如果您不想在每次更新pom时重新生成eclipse项目文件时都设置maven编译器设置,那么您仍然需要在pom中设置它们


如果您看一下该插件的详细配置,这里有关于如何生成各种eclipse元数据的说明。

如果我能关闭maven扰乱我的java设置,我会更高兴。为什么一定要把勾号放在那个框里?默认值为1.5是很糟糕的。@FranzKafka,Maven专注于提供的内容之一是兼容版本。如果您尝试通过命令行或在CI工具上构建应用程序,他们将尝试在1.5上构建应用程序,因为这是Maven当前的默认设置。如果指定源/目标信息,m2e将使用正确的设置。没关系,我认为它也会更改Eclipse代码样式检查,但它们似乎未被更改。为了补充这一点,请查看,它提供了许多额外的质量控制插件,这些插件根据您的pom添加配置。我将大多数编译器检查从“忽略”更改为“警告”。对于编译器检查,只需在工作区级别设置它们。