如果我认识一个班级,我怎么知道它来自哪个罐子?

时间:2010-02-01 07:52:48

标签: jar classloader

现在我可以使用clazz.getClassLoader()。getResource(class.getName()),然后我将URL子串到获取jar文件的位置,但我真的想知道是否有更好的方法来做到这一点

有没有这方面的API?谢谢。

1 个答案:

答案 0 :(得分:4)

如果你的班级被称为Foo

URL classLocation = Foo.class.getProtectionDomain().getCodeSource().getLocation()

classLocation将包含从中加载类的URL。可以是独立类的文件夹,也可以是jar / zip。