1. ホーム

[解決済み】JUnitでsrc/test/resourcesディレクトリのパスを取得する方法は?

2022-03-28 23:38:58

質問

src/test/resourcesからファイルを読み込むことができるのは知っています。

getClass().getResource("somefile").getFile()

しかし、どうやって src/test/resources のフルパスを取得するのでしょうか? ディレクトリ つまり、ファイルをロードするのではなく、ディレクトリのパスを知りたいだけなのです。

解決方法は?

を使ってみてください。 ClassLoader クラスがあります。

ClassLoader classLoader = getClass().getClassLoader();
File file = new File(classLoader.getResource("somefile").getFile());
System.out.println(file.getAbsolutePath());

A ClassLoader は、クラスの読み込みを担当します。すべてのクラスは ClassLoader . このコードでは File をリソースディレクトリから取得します。呼び出し getAbsolutePath() は、その絶対的な Path .

のJavadocです。 ClassLoader : http://docs.oracle.com/javase/7/docs/api/java/lang/ClassLoader.html