System.getProperty(“java.class.path”)在Web应用程序中不起作用

时间:2012-05-29 15:05:19

标签: java java-ee

我正在尝试扫描我的webapplication类路径,以查找所有类似于某些界面的类。

我目前的应用程序在独立版本中运行良好,但在网络环境中失败。

这是我的代码部分

public String[] getClassPathRoots() {
        String classPath;
          classPath = System.getProperty("java.class.path");
        }
        String[] pathElements = classPath.split(File.pathSeparator);
        return pathElements;
    }

我不确定如何在我的应用程序中使用java.class.path,因为我应该能够获得类路径根目录。

1 个答案:

答案 0 :(得分:5)

该属性设置为JVM在启动时使用的类路径。但是,典型的Web容器动态地为每个webapp构造类路径(即类加载器层次结构),并且不更新属性以反映这一点。 (并且它不能真的,因为Web容器可以运行多个webapps,并且每个都将具有不同的类加载器层次结构。您将如何在JVM的全局系统属性对象中表示 ?)

简而言之,您需要找到另一种方式。