class.getResource("." /*dot*/) 有什么特殊含义吗?

bas*_*sin 5 java classloader

有时我会在其他人的代码中看到这一点。但是当我尝试时,它返回null。

baseUrl = org.company.UploadService.class.getResource(".");
url = new URL(baseUrl, "http://192.168.164.32:9080/mka-web/services/UploadService?wsdl");
Run Code Online (Sandbox Code Playgroud)

Joe*_*Joe 2

getResource(".")在某些情况下,将返回一个指向类文件所在目录的 URL。

该线程将该行为描述为:

如果从目录加载类,则指向类路径中用于加载类的目录的 URL;如果从 jar 加载,则指向 null。

最后一部分可能是您得到null. 另一个原因可能是:

它不适用于所有 JVM