我正在使用Guava
中的ClassPath.getAllClasses
方法,在运行时查找实现某个接口的类。当与rt.jar
一起使用时,它会找到许多来自sun.*
和类似包的类,我想要过滤掉它们。
我想要重用Eclipse和其他Java编译器用于警告受限API的机制。这些信息是存储在JRE中还是硬编码到Eclipse中的?
Bundle-RequiredExecutionEnvironment
),因此,这些档案存储在*.profile
文件中,它们位于org.eclipse.osgi插件/捆绑包中,并且每个文件都包含可访问软件包(org.osgi.framework.system.packages
)的白名单,例如对于JavaSE-1.8
。sun.*
包等引发访问限制错误;或者rt.jar
,现在是modules
文件)。
@Deprecated
,可以轻松地进行分析,例如使用Java的反射API。 - Zabuzard