Apache Ant添加外部Jar的问题

时间:2018-11-13 16:13:35

标签: java ant

我可以在编译时运行,但是当我尝试jar时,总是会出现此错误。我不太确定自己在做什么错。

Exception in thread "Thread-3" java.lang.NoClassDefFoundError: org/bouncycastle/openpgp/operator/KeyFingerPrintCalculator

这就是我的清单

Main-Class: com.Program
Class-Path: extlib/bcpg-jdk14-156.jar extlib/bcprov-jdk14-156.jar extlib/commons-io-2.5.jar

这是我的build.xml

<manifestclasspath property="jar.classpath" jarfile="Program.jar">
 <classpath>
    <fileset dir = "./${extlib}" includes="**/*.jar"/>
 </classpath>
</manifestclasspath>

这是jar代码

 <jar jarfile="${dist}/Program.jar" basedir="${build}">
    <manifest>
       <attribute name="Main-Class" value="com.Program"/>
       <attribute name="Class-Path" value="${jar.classpath}"/>
    </manifest>
 </jar>

这就是我的文件结构

Program.jar
extlib\bcpg-jdk14-156.jar
extlib\bcprov-jdk14-156.jar
extlib\commons-io-2.5.jar

现在只要敲了两下头,任何帮助将不胜感激。如果您需要更多信息,请告诉我。

1 个答案:

答案 0 :(得分:0)

这对我有用:

  • 取消对jar文件的签名似乎可行。

  • 打开bouncycastle jar文件,删除META-INF文件夹,然后重新打包并重新运行PrintProcessor的ant jar。

祝你好运! -伊桑(Ethan)

相关问题