【发布时间】:2013-07-26 16:09:33
【问题描述】:
Java 中是否有任何方法可以将简单的类名(例如 String)解析为完全限定的类名(例如 java.lang.String),或者直接解析为 Class 更好?我想到的唯一方法是解析文件以进行导入并从类路径 jar 中找出。肯定有更好的办法。
【问题讨论】:
-
一般情况下无法做到这一点(例如,列表或日期)。是否存在某种限制搜索包的上下文?
-
你是对的,它依赖于上下文,并且在运行时也可能不可能。我正在编译,所以我有一个上下文。我正在使用 javax.tools.JavaCompiler 编译文件,但仍然不确定这有什么帮助。
-
如果您可以在源代码中列出导入,您可以尝试从每个包中加载类,但由于您处于编译过程的中间,因此可能找不到该类因为还没有编译...
标签: java classloader