题
我遇到了错误:
SignJar] Jarsigner:尝试重命名C: workspace line_editor lib iCon.jar to C: workspace line _editor lib lib icon.jar.orig失败
试图自我签名一组带有蚂蚁内蚀的罐子。蚂蚁的构建在该项目中运行良好,在其他项目中也有类似的代码。我对代码进行了一些小的更改,并试图重建并继续遇到此错误。
这是相关的蚂蚁目标:
<target name="sign" depends="jar" description="Signs Jars">
<genkey keystore="myKeystore1" alias="something" storepass="somethingpass"
dname="CN=Classification, OU=NAPA, O=GPC, C=US"/>
<signjar keystore="myKeystore1" alias="something" storepass="somethingpass">
<fileset file="${web.dir}/${jar.name}" />
<fileset dir="${lib.dir}">
<include name="*.jar"/>
</fileset>
</signjar>
</target>
我删除了该项目,并将其从我们的存储库中删除。因此,它具有与该部分不会失败的其他项目相同的默认项目设置。我看了有问题的.jar,它不仅读。我更改了名称,下一个字母顺序的.jar文件也失败了。没有运行程序可以访问此文件夹中的.jars。
有什么建议吗?
解决方案
一种可能性是,在构建过程中使用的“ lib”目录中的罐子正在使用。是 ${lib.dir}
包含在buildfile中使用的类路径上?
您可以创建一个单独的目录,以存放签名的罐子并将其指定到“ Signjar”任务中 Destdir 属性。
其他提示
我有同样的问题。尝试自己重命名罐子文件。如果无法重命名,您通常可以弄清楚哪个应用程序上有文件锁定。很可能是Java的实例。退出所有基于Java的应用程序,然后重试。 (使用任务管理器确保您的Java/Javaw不运行。)之后,它应该起作用。
它寻找 jarsigner.exe
在主目录中 JRE 为该项目选择。如果JRE只是JRE(不是JDK),则该程序将不存在。
尝试设置特定于项目的JRE,并确保它实际上是JDK。
不隶属于 StackOverflow