共计 837 个字符,预计需要花费 3 分钟才能阅读完成。
在 Java 中,可以使用 ProtectionDomain
类来获取 Jar 包所在的目录。
以下是一个示例代码:
import java.security.CodeSource;
import java.security.ProtectionDomain;
public class JarPathExample {public static void main(String[] args) {ProtectionDomain protectionDomain = JarPathExample.class.getProtectionDomain();
CodeSource codeSource = protectionDomain.getCodeSource();
String jarPath = codeSource.getLocation().getPath();
System.out.println("Jar 所在目录:" + jarPath);
}
}
这段代码首先通过 getProtectionDomain()
方法获取当前类的保护域(ProtectionDomain
)。然后,通过 getCodeSource()
方法获取 Jar 包的源码(CodeSource
)。最后,通过 getLocation()
方法获取 Jar 包所在的位置,并使用 getPath()
方法获取 Jar 包所在目录的路径。
请注意,此代码仅适用于已打包为 Jar 文件的应用程序。如果您的应用程序正在运行时,可以使用 Class
类的 getResource()
方法来获取类路径下的资源文件的路径。例如:
String jarPath = JarPathExample.class.getResource("/your_resource_file").getPath();
其中 your_resource_file
是资源文件的路径。
请注意,获取 Jar 包所在目录的代码只能在已打包为 Jar 文件的环境中使用。如果您在 IDE 中运行代码,将无法获取到 Jar 包的路径。
丸趣 TV 网 – 提供最优质的资源集合!
正文完
发表至: Java
2023-12-20