IntelliJ IDEA でのuser.dir について
IntelliJ IDEA ではuser.dir はプロジェクトのフォルダに設定されているようです。
IntelliJ IDEA でuser.dir を表示してみると
System.out.println("user.dir:" + System.getProperty("user.dir"));
実行結果
user.dir:${ホームフォルダ}/IdeaProjects/${プロジェクト名}
となりました。
IntelliJ IDEA でプログラムをテスト実行した時に、
new ImageIcon("ファイル名");
などでファイル名だけ書いたときはsrc やout/production/${プロジェクト名} ではなく、プロジェクトのフォルダ(scr,outフォルダがあるフォルダ)からファイルを読み込むようです。
端末から
cd ~/IdeaProjects/${プロジェクト名}/out/production/${プロジェクト名} java ${メインのクラス名}.class
などで起動した時はclass ファイルがあるフォルダから読込されるようです。
環境
OS ArchLinux
IntelliJ IDEA community 2020.1
ゆうこさんのビックリホームページ で公開されている Java実用的サンプル提供 の プルダウン選択とイメージ表示 を IntelliJ IDEA で実行すると画像イメージが表示されなかったので調べました。
追記 2020-05-24
IntelliJ IDEA のuser.dirを変更できるというページがあったので探してみたらありました。
メニューバーの実行→構成の編集
アプリケーション→${プロジェクト名}内の作業ディレクトリーをclassファイルがあるフォルダ(~/IdeaProjects/${プロジェクト名}/out/production/${プロジェクト名})にすると端末と同じ動作になりました。
参考ページ intellij idea module default “user.dir”:https://stackoverflow.com/questions/17211066/intellij-idea-module-default-user-dir