我可以在编译时运行,但是当我尝试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
现在只要敲了两下头,任何帮助将不胜感激。如果您需要更多信息,请告诉我。
答案 0 :(得分:0)
这对我有用:
取消对jar文件的签名似乎可行。
打开bouncycastle jar文件,删除META-INF文件夹,然后重新打包并重新运行PrintProcessor的ant jar。
祝你好运! -伊桑(Ethan)