我可以在编译时运行,但当我尝试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
extlibbcpg-jdk14-156.jar
extlibbcprov-jdk14-156.jar
extlibcommons-io-2.5.jar
如果能帮我忙两天,我将不胜感激。如果你需要更多信息,请告诉我。
这对我很有效:
-
取消对jar文件的签名似乎有效。
-
打开bouncycastle jar文件,删除META-INF文件夹,然后重新jar并为PrintProcessor重新运行ant jar。
祝你好运!-Ethan