我遇到了错误:

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。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top