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