簡體   English   中英

將相對目錄添加到java類路徑並使用ClassLoader()。getResourceAsStream(“”)

[英]adding relative directory to java classpath and using ClassLoader().getResourceAsStream(“”)

是否可以在Java類路徑中添加相對目錄(即foo / bar / plugh)並使用

InputStream in = getClassLoader().getResourceAsStream("xyzzy.properties");

要獲取foo / bar / plugh / xyzzy.properties?

我的類路徑如下所示:

foo.jar;foo/bar/plugh;xyz.jar 

而且我能夠使用來自foo和xyz jars的類和資源,但不能使用來自plugh目錄的類和資源。 在這些情況下, in始終為null。

我無法使其正常工作,並且不確定是否只是不受支持,是否缺少一些細微之處或做錯了什么。 我需要使用絕對路徑嗎?

也許我誤會了您要執行的操作,但是如果您在類路徑中有一個文件夾,則意味着其下的所有文件也都應在類路徑中。 如果沒有,您總是可以在類路徑上傳遞每個.properties文件。

但是無論哪種方式,由於包含文件的文件/文件夾都在類路徑中,因此您應該能夠:

InputStream in = new FileInputStream("classpath:xyz.properties")

並且由於“ foo / bar / plugh”位於類路徑中,因此它將查找xyz.properties的位置之一位於“ foo / bar / plugh”中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM