2010-12-08 27 views
2

.jnlpファイルをダウンロードして実行しました。それは正常に動作します。私はそれを閉じてもう一度始める、それは正常に実行されます。2回目の実行でJava起動が失敗する:java.lang.NullPointerException

しかし、3回目の試行では常にjava.lang.NullPointerExceptionがスローされ、アプリケーションは起動しません。

コンピュータを再起動すると、再び動作します。これをどうすれば解決できますか?

java.lang.NullPointerException 
    at com.sun.javaws.security.SigningInfo.overlapSigners(Unknown Source) 
    at com.sun.javaws.security.SigningInfo.getCertificates(Unknown Source) 
    at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source) 
    at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source) 
    at com.sun.javaws.Launcher.prepareResources(Unknown Source) 
    at com.sun.javaws.Launcher.prepareAllResources(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.launch(Unknown Source) 
    at com.sun.javaws.Main.launchApp(Unknown Source) 
    at com.sun.javaws.Main.continueInSecureThread(Unknown Source) 
    at com.sun.javaws.Main$1.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 
+0

難しいですが、コードを投稿してください... – Caner

+0

明らかに署名の問題ですか? – Falmarri

+0

あなたのアプリケーションが正しく終了していないと思います。アプリケーションを終了すると、まだ実行されています。 –

答えて

5

スタックトレースはBug ID 6533653Bug ID 6850598と同じです。根本的な原因は、JNLPの空のJARのようです。彼らはそれぞれJava 1.6 update 2とJava 1.6 update 18でそれを修正したと言います。

のVM 6u18これをで:

しかし、修正がまだずっとあなたの状況のように見える説明とともに、1.6アップデート18で動作しないと文句を言い、最後のバグでのコメントがありますバグはクローズされません。 あなたは一度、あなたのアプリケーションを起動することはできますが、次の例外た後:

java.lang.NullPointerException 
    at com.sun.javaws.security.SigningInfo.overlapSigners(Unknown Source) 
    at com.sun.javaws.security.SigningInfo.getCertificates(Unknown Source) 
    at com.sun.javaws.LaunchDownload.checkSignedResourcesHelper(Unknown Source) 
    at com.sun.javaws.LaunchDownload.checkSignedResources(Unknown Source) 
    at com.sun.javaws.Launcher.prepareResources(Unknown Source) 
    at com.sun.javaws.Launcher.prepareAllResources(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.prepareToLaunch(Unknown Source) 
    at com.sun.javaws.Launcher.launch(Unknown Source) 
    at com.sun.javaws.Main.launchApp(Unknown Source) 
    at com.sun.javaws.Main.continueInSecureThread(Unknown Source) 
    at com.sun.javaws.Main$1.run(Unknown Source) 
    at java.lang.Thread.run(Unknown Source) 

を私はJNLPから空の瓶を削除すると、すべてがOKです。 JNLPから空のJARを削除しようとし、同様にJNLPの作者に報告し、だから、出版

前に、あなたの修正を確認してください。

+0

空の瓶ですか?私が知っている限り、それらのすべては少なくとも2KBのサイズです。 – KJW

0

この問題は、バージョン1.6.0_18のユーザーにも当てはまりました。

私のjnlpファイルに記載されているjarファイルを見て、ライセンスjarがクラスなしのjarの候補として飛び出していることがわかりました。私はjar tfでこれを確認しました。

jnlpファイルからjarファイルを削除したところ、エラーは発生しませんでした。しかし、私はサードパーティのライブラリのためのライセンスjarが必要でした。

は、私は自分のアプリケーションジャーにライセンスjarをバンドルする私のビルドファイルを更新

<jar jarfile="${dist}/lib/${application}.jar"> 
    <zipgroupfileset dir="${extLib}" includes="runtime.jar" /> 
... 
</jar> 

サードパーティのライブラリをクラスパスにライセンス情報とこれ以上のエラーを見つけることができます!

関連する問題