getClass().getResource() を使用したリソースの検索
Java でのリソースのロードは、特に getClass().getResource を使用する場合に難しい場合があります。 ()。このメソッドは、クラスパス内のリソースを見つけるための特定のルールに従います。これは、通常のファイルシステム パスとは異なる場合があります。
あなたの場合、getClass().getResource(path) を使用してイメージをロードしようとしました。ただし、パス変数にファイル システム パスが含まれていたため、クラス ローダーはリソースを見つけることができませんでした。
適切なファイル システム パスを期待する new ImageIcon(path, description) とは異なり、getClass().getResource(path)リソースが配置されると予想されるクラスパス参照が必要です。クラスパスは、Java クラスと、イメージ、フォント、プロパティ ファイルなどのリソースが保存される標準の場所です。
この問題を解決するには、アプリケーションのクラスパス内にイメージをパッケージ化する必要があります。これは、イメージをソース コード ディレクトリに追加し、/com/example/app/resources/image.png などの完全修飾パスを使用してクラスパスから参照することで実現できます。
または、 getResourceAsStream() メソッドを使用して、リソースを InputStream としてロードできます。これにより、場所に関係なく、inputStream からリソースに直接アクセスできるようになります。
以上がJavaでgetClass().getResource()を使用して画像をロードする方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。