sal*_*sal 5 java directory classpath classloader
是否可以将相对目录(即foo/bar/plugh)添加到java类路径并使用
InputStream in = getClassLoader().getResourceAsStream("xyzzy.properties");
Run Code Online (Sandbox Code Playgroud)
要获取foo/bar/plugh/xyzzy.properties?
我的classpath看起来像这样:
foo.jar;foo/bar/plugh;xyz.jar
Run Code Online (Sandbox Code Playgroud)
我可以使用foo和xyz jar中的类和资源,但不能使用plugh目录.在这些情况下,in始终为null.
我不能让这个工作,我不确定这是否只是不支持,我错过了一些微妙或我做错了什么.我需要使用绝对路径吗?
也许我误解了你要做的事情,但是如果你的类路径中有一个文件夹,这意味着它下面的所有文件也应该在类路径中.如果没有,您始终可以在类路径上传递每个.properties文件.
但无论哪种方式,由于包含该文件的文件/文件夹位于类路径中,您应该能够:
InputStream in = new FileInputStream("classpath:xyz.properties")
Run Code Online (Sandbox Code Playgroud)
由于"foo/bar/plugh"位于类路径中,因此xyz.properties所在的位置之一位于"foo/bar/plugh"中.