首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Maven真的尊重编译器插件中的<source>标记吗?

Maven真的尊重编译器插件中的<source>标记吗?
EN

Stack Overflow用户
提问于 2009-07-28 10:14:11
回答 1查看 1.9K关注 0票数 6

我工作的Java程序应该与Java5兼容。我在实现的接口方法上有@Override注释,这在Java6中是允许的,但在5中不允许。我使用Java6SDK。当我将@Override设置为5.0遵从性时,Eclipse会正确地给出错误消息。然而,我的Maven构建使用POM中的以下设置,运行时甚至没有任何警告:

代码语言:javascript
代码运行次数:0
运行
复制
    <plugin>
      <groupId>org.apache.maven.plugins</groupId>
      <artifactId>maven-compiler-plugin</artifactId>
      <configuration>
        <source>1.5</source>
        <target>1.5</target>
      </configuration>
    </plugin>

我认为这实际上会导致构建失败,这是正确的吗?为什么不呢,有什么我能做的吗?

EN

回答 1

Stack Overflow用户

发布于 2009-07-28 11:05:07

正如roe的回答所说的,您需要使用1.5编译器,因为JDK不能很好地完成它的工作。值得一提的是,您可以通过tweaking the maven-compiler-plugin配置来使用特定的编译器来避免对路径等的干扰:

代码语言:javascript
代码运行次数:0
运行
复制
<plugins>
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <configuration>
      <verbose>true</verbose>
      <fork>true</fork>
      <executable>${JAVA_1_5_HOME}/bin/javac</executable>
      <compilerVersion>1.5</compilerVersion>
    </configuration>
  </plugin>
  ...
</plugins>

然后,可以在项目或settings.xml中指定编译器的路径

代码语言:javascript
代码运行次数:0
运行
复制
<properties>
  <JAVA_1_5_HOME>/path/to/1.5jdk</JAVA_1_5_HOME>
</properties>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1193184

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档