0

私はこれに信じられないほど混乱しています。私は以前これに苦労しましたが、一度それを理解したら、もう問題はありませんでした. しかし今、それは再び現れました。基本的に、ファイルを画像として読み込むコードがいくつかあります。ただし、特定のイメージのみを読み取ることができます。具体的には、ソース フォルダーにすべてのファイルを含めるようにリファクタリングした後、プロジェクト フォルダーに追加されたイメージにのみアクセスできます (以前は外部にありましたが、まだ JAR に含まれていました)。それ以来、問題のあるフォルダーのコピーを作成し、元のフォルダーを削除してから、コピーの名前を元のフォルダーと同じ名前に効果的に変更することで問題を解決できましたが、なぜこれが起こるのかについてはまだ興味があります. 誰にもアイデアがありますか?

4

1 に答える 1

1

jar を 7zip や Winzip などで開いて検証する必要があります。

同じ jar 内で、クラスは URL で使用できます (ではなくgetResourceAsStreamパスセパレーター)。画像が同じパッケージまたはサブパッケージ パスにある場合の相対 URL。それ以外の場合は絶対 URL 。/\\"/..."

重要なのは、 Windows のファイル名ではなく、パスが大文字と小文字を区別することです。ファイルが jar の外のクラスパスにもある場合、Windows (Linux ではない) では大文字と小文字が間違っていても問題ないように見えるため、これは注意が必要です。

于 2013-06-07T22:21:40.637 に答える