【问题标题】:Blindly get Java class names?盲目获取Java类名?
【发布时间】:2013-05-22 19:40:49
【问题描述】:

当您对类的上下文一无所知时,有没有办法在 jvm 系统路径上收集 java 类名(作为字符串)?我见过一些类似的问题,但至少都需要知道包名。

我查看了 Java Interface Instrumentation,但除非我误读,否则它似乎只与在 JVM 上运行的程序有关。

【问题讨论】:

  • 这似乎是XY problem。为什么要这样做?
  • 我正在编写一个使用 javassist 操作单独程序的程序。我可以通过简单地向操纵器说明类名来做到这一点(即“HelloWorld”将返回 HelloWorld.java 类)。我希望扩展它,以便操纵器可以拥有一个列出单独程序的所有类的 gui,这样用户就不必知道类名。

标签: java class jvm names


【解决方案1】:

您可以通过以下方式获取类路径 jar 和目录:

System.getProperty("java.class.path");

然后您可以列出 jar 中的所有类,如 this answer 所示。

【讨论】:

    猜你喜欢
    • 2016-09-20
    • 2012-07-20
    • 2022-01-16
    • 2011-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-12
    • 2013-11-10
    相关资源
    最近更新 更多