包装正确的jdk

时间:2012-06-27 06:59:59

标签: java maven jar

花了一整天的时间试图理解为什么maven不想根据编译器插件中的条目切换jdk(参见http://maven.apache.org/plugins/maven-compiler-plugin/examples/compile-using-different-jdk.html)我发现编译器正在切换,但jar工具是不。请考虑以下事实:

  1. 我在我的代码中添加了多次捕获块作为测试。如果我将标记设置为java 7,则编译。如果我改为1.6则会中断。这是预期的行为。

  2. 但是,如果我删除菱形运算符(即在两者中编译),并且我使用Java 6编译,我在清单文件中得到以下内容:

    清单 - 版本:1.0 Archiver-版本:Plexus Archiver 创建者:Apache Maven 内置:jaco Build-Jdk:1.7.0_147-icedtea ...

  3. 这当然是相当模糊的。有没有办法设置正确的“jar工具”,以便清单文件将反映正在使用的版本?

2 个答案:

答案 0 :(得分:1)

这里有一种方法,使用Maven / Ant:

Maven: Adding Custom Attributes and Build Timestamp to Manifest

答案 1 :(得分:0)

工具链插件可能会有帮助,不确定,还没有尝试过。

http://maven.apache.org/plugins/maven-toolchains-plugin/