首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过Maven构建具有不同JDK版本的JAR

通过Maven构建具有不同JDK版本的JAR
EN

Stack Overflow用户
提问于 2012-06-26 23:13:14
回答 1查看 5.1K关注 0票数 6

我们目前正忙于升级到Java 1.7。不幸的是,随着这些事情的发展,许多应用程序无法在1.7和breaks下编译(甚至在覆盖标志传递到1.7的情况下也是如此)。我们的计划是尽快重新考虑这些因素。

我想以这样一种方式配置Maven,即可以根据POM中的某些属性使用不同的JDK。我严格遵循了http://maven.apache.org/plugins/maven-compiler-plugin/examples/compile-using-different-jdk.html,但无论我做什么,maven都会忽略POM中指定的java。

POM具有以下条目:

代码语言:javascript
复制
<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>2.5.1</version>
            <configuration>
                <fork>true</fork>
                <source>1.6</source>
                <target>1.6</target>
                <compiler-version>1.6</compiler-version>
                <executable>/usr/lib/jvm/java-6-openjdk/bin/javac</executable> 
                <debug>true</debug>
                <verbose>true</verbose>
            </configuration>
        </plugin>
...

此外,我没有从'verbose‘标志得到任何输出--我觉得这很奇怪。也许上面的这些被完全忽略了?

编辑:我知道它不工作,因为检查META-INF/MANIFEST.MF文件会显示错误的java版本。使用的版本与当前路径中的javac对应。

代码语言:javascript
复制
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Created-By: Apache Maven
Built-By: jaco
Build-Jdk: 1.7.0_147-icedtea
Implementation-Title: xxx
Implementation-Vendor: xxx
Implementation-Version: 1.3.7
Specification-Title: xxx
Specification-Vendor: xxx
Specification-Version: 1.3.7

编辑:其他相当有趣的东西。如果我故意打破文件引用,我会得到:

代码语言:javascript
复制
[INFO] Compilation failure
Failure executing javac,  but could not parse the error:
/bin/sh: /usr/lib/jvm/java-6-openjdk: Permission denied

编辑:我怀疑问题出在构建清单文件的组件上。如果我在我的机器上破坏Java7(也就是将javac重命名为javac.pleasegoaway),它会编译!!但是,清单文件仍报告版本1.7。现在这已经不再令人讨厌了,而且变得越来越搞笑了。

我们将非常感谢您的帮助,谢谢。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-27 00:36:52

编译和jar是两个独立的操作。当您更改编译器路径时出现编译错误这一事实表明编译正在正确进行。maven jar插件很可能使用java7 jar工具来创建jar文件。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11210453

复制
相关文章

相似问题

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