如何在java命令提示符下运行已签名的jar文件?

时间:2012-02-21 06:37:16

标签: java jar jar-signing jarsigner

我在java 6命令提示符下创建了jar文件,然后使用jdk jarsigner实用程序对jar文件进行了签名。最后验证成功。但是当我使用

运行jar文件时
Java -jar JarExample.jar

它抛出了像NoClassDefFoundError.Could not find the main class :JarTest

这样的异常

这是我的清单文件内容:

Manifest-Version: 1.0
Created-By: 1.6.0_20 (Sun Microsystems Inc.)
Main-Class: JarTest 

Name: ClassFile.class
SHA1-Digest: 6/tiYFkvtAy4Vl0ODl/6y6j/IJU=

Name: JarTest.class
SHA1-Digest: eDa/GNMKffutC3xfAyAwX0mCNnM=

但在签署jar之前,它工作得很好。所以,我不知道这有什么问题?

请指导我摆脱这个问题?

1 个答案:

答案 0 :(得分:1)

我已经看到了你的问题。也许我知道你的问题在哪里?清单文件必须有一个 Class-Path变量,因此在创建的jar文件中必须包含我在下面显示的信息:

Manifest-Version: 1.0
Created-By: 1.6.0_20 (Sun Microsystems Inc.)
Main-Class: JarTest 
Class-Path:./lib/yourName.jar ./lib/*