最近、Slick2Dでゲームを開発しました。すべての画像に直接アクセスしました。たとえば、
Image i = new Image("address.png");
リソースをロードするクラスを使用したり、入力ストリームを使用したりするのとは対照的です。
すべてのリソースをjarにロードできるかどうか疑問に思いました。/res
フォルダーをビルドパスに追加し、jarspliceを使用してライブラリとネイティブを追加しましたが、画像が見つからないためjarは実行されません。
Image i = new Image("address.png");
アプリケーションが実行されているルート ファイルシステムを調べています。jarfile にパックされたリソースを使用する場合は、次のことを行う必要があります。
Image i = new Image(getClass().getResource("/res/address.png").toURI()); // In case your Image object accepts URI as parameters
編集
Image i = new Image(getClass().getResource("/res/address.png").toExternalForm()); // Since your object only accept Strings