我正在尝试从包中读取* .class 资源。我使用以下代码来实现这一目标......
URL path = SomeClass.class.getResource("/source/someClass.class");
当我运行此代码时,我最终得到path = null;
。但是,如果我使用相同的代码并尝试访问其他资源,例如* .gif 和* .txt 文件,则会成功。我有理由无法访问* .class 文件吗?
答案 0 :(得分:0)
重新阅读javadoc。我认为它描述了两种使用getResource()的方法:
http://docs.oracle.com/javase/1.5.0/docs/api/java/lang/Class.html#getResource(java.lang.String)
尝试以下方法:
URL path = Class.getResource( "modified/package/SomeClass" )
您可能想要使用:
InputStream stream = Class.getResourceAsStream("modified/package/SomeClass")
因为您只是尝试将类文件复制到Jar文件中。
答案 1 :(得分:0)
可能是资源路径不正确。因为类目录对于项目是特殊的。
您可以尝试以下操作:
URL path = SomeClass.class.getResource("PackagePath/someClass.class");
PackagePath就像“/ com / xxx / projectTest”。