java:如何知道在运行时加载库的位置

时间:2016-02-19 06:30:02

标签: java jar shared-libraries

我有一个问题,jar文件在一台机器上运行,但在另一台机器上运行 - asked on stackoverflow

似乎在第二台计算机上找不到某些依赖项。

我的问题是,有没有办法知道库的加载位置(简单地为System.out.println("from which directory the dependent jar is linked"))?

2 个答案:

答案 0 :(得分:2)

这将输出大量信息,但它包含所有jar文件的位置:

您可以使用-verbose:class选项启动Java以调试类加载器问题。

答案 1 :(得分:1)

您可以使用jcmd(JDK的一部分)并查询JVM在启动时使用的类路径。

jcmd ${pid_of_the_JVM} VM.system_properties | grep path

在输出中查找属性

java.class.path
sun.boot.class.path