Proguard Obfuscation在使用Maven的Jenkins构建中失败 - 无法读取classes.jar

问题描述 投票:2回答:1

我正在使用Jenkins在Linux机器上构建Maven项目并收到以下错误:

[proguard]错误:无法读取[/usr/lib/jvm/java-6-openjdk-amd64/Classes/classes.jar](没有这样的文件或目录)

我已经安装了JDK并将JAVA_HOME变量设置为:/ usr / lib / jvm / java-6-openjdk-amd64

但是,如果我看一下Jenkins的“系统信息”部分,我会得到两个java home的位置:

java.home:/ usr / lib / jvm / java-6-openjdk-amd64 / jre

JAVA_HOME:/ usr / lib / jvm / java-6-openjdk-amd64

当我在MacOS上运行项目时,proguard插件工作正常,所以我知道它与我的项目设置无关。我在Jenkins中缺少的东西或者我的服务器上是如何安装Java的?

java linux maven jenkins proguard
1个回答
0
投票

你正在使用proguard插件?您是否在pom.xml中包含以下内容?

<libs>
    <lib>${java.home}/Classes/classes.jar</lib>
</libs>

我想,你的开发环境是一个mac框,你的jenkins在linux框中运行。这就是问题所在。 以下设置可以在linux中使用。如果您在Mac中安装Oracle Jdk 1.7或1.8,它也可以。

<libs>
     <lib>${java.home}/lib/rt.jar</lib>
</libs>

我的观点是,问题的关键在于libs设置来自使用apple java6的mac,而jenkins是在linux上。

© www.soinside.com 2019 - 2024. All rights reserved.