私のAntビルドのjarターゲットである:java.lang.SecurityException:以下は無署名ファイル用manifiestセクション(RSA、SF、DSAファイルとMANIFEST.MFを除く)
<target name="build jar" depends="compile">
<mkdir dir="${dist.home}" />
<jar destfile="${dist.home}/${app.name}.jar" basedir="${build.home}/classes">
<zipgroupfileset dir="${lib.home}" includes="*.jar" excludes="*.RSA, *.SF, *.DSA, META-INF/MANIFEST.MF" />
<manifest>
<attribute name = "Main-Class" value = "com.karthik.publisher"/>
</manifest>
</jar>
</target>
私は/実行するとjarファイルを実行しますあなたは私が各ジャーからRSA、SFとDSAファイルとMANIFEST.MFを除外しますが、私はまだこの例外を取得しています見ることができるように、コマンドプロンプトから、私は以下のエラーに
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.SecurityException: no manifiest section for signature file entry javax/mail/SecuritySupport.class
at sun.security.util.SignatureFileVerifier.verifySection(Unknown Source)
at sun.security.util.SignatureFileVerifier.processImpl(Unknown Source)
at sun.security.util.SignatureFileVerifier.process(Unknown Source)
を取得します。
問題の原因とその解決方法を知っているかもしれません。
生成されたJARファイルを解凍し、使用可能なファイルがMETA-INFディレクトリであることを確認します。 – Robert
JARファイルを抽出した後、META-INFディレクトリに.RSA、.SF、MANIFEST.MF、mimetype.default、mailcap.defaultファイルがあります。これらのファイルはbuild/jarで除外されていないようです。私はビルドジャーのターゲットで何か間違っていると思う。 – Karthik