ファイルにアクセスしようとしたときに NoSuchFileException が発生していたので、通常のプロセスを実行し、ファイルが存在することを確認しました。例外を確認することでこれを行いました。
java.nio.file.NoSuchFileException: /var/config/file/test111.txt
それから
vim /var/config/file/test111.txt
ファイルが実際に存在することを確認します。さらにいくつかのテストを行った後、Java が /config フォルダーを認識できないことに気付きました。
File f = new File("/var");
f.list();
これにより、/var 内の一部のファイルとフォルダーが返されましたが、/var/config を含む他のファイルとフォルダーは返されませんでした。フォルダーで ls -lah を実行してアクセス許可を確認しましたが、Java が表示できるものとできないものに違いはないと私が知る限りではありません。たとえば、/var/cache を見ることができます
drwxr-xr-x 6 root root 4096 Feb 24 09:03 cache
drwxr-xr-x 3 root root 4096 Feb 24 09:04 config
フォルダー間でパーミッションが同じ場合、Java が一部のフォルダーを表示できるのに、他のフォルダーを表示できないのはなぜですか?
ありがとう!