9

次のコードで画像リソースをロードしていましたが、開発環境 (netbeans) からは問題なく動作しますが、デスクトップから実行するとすぐに例外がスローされました。

new ImageIcon(Images.class.getResource("images/highlighter24.gif"));

コードとは大文字と小文字が異なるファイルにたどり着きました。

わかりました、悪いですが、なぜ一貫性のない動作なのですか?

グレムリン?

注:質問する前に、私はWindowsで実行しています。

4

1 に答える 1

18

推測してみましょう: NetBeans では、ファイル システムからロードされていました (大文字と小文字は区別されません) が、デスクトップから実行する場合は、jar ファイル (大文字と小文字が区別されます) でした。

私は以前、Web アプリが Windows では問題なく動作したが、URL の大文字と小文字が間違っていたために Unix で失敗した、この種のことを見たことがあります。

jar ファイルを「単なる別のファイル システム」と考えれば、一貫性がないことが少し面倒だとしても、理にかなっています。

于 2008-10-24T19:39:39.987 に答える