9
我試圖運行下面的應用程序,它試圖從classpath中加載一個文件(src/main/resources/test.txt
):的src/main /資源利用MVN Exec時我怎樣才能到classpath中:JAVA
package com.example;
public class Main {
public static void main(String[] args) {
System.out.println(Main.class.getResource("test.txt"));
}
}
當我做mvn exec:java -Dexec.mainClass=com.example.Main
時,我在命令行上打印出null
。
那麼如何獲取src/main/resources中的文件添加到類路徑?請注意,我運行了mvn package
,檢查了生成的target/test.jar
,並確認它包含頂層的test.txt
。
如果你把test.txt的插入COM /例子包吧不管用。爲了正確地工作,你需要把test.txt放到src/main/resources中。 – khmarbaise
好的。我想我現在明白了。所以'getResource'解釋相對於類實例的路徑(因爲'Main'在'com.example'中我偶然尋找'src/main/resources/com/example/test.txt'而不是'src/main/resources/test.txt') – user1930555
太棒了。我自己在想這個。 – ktm5124