是否有一种简单的方法可以将我自己执行的JAR中的资源作为InputStream加载而无需访问ClassLoader?问题是我的java.policy限制访问ClassLoader(这不能更改)。我想加载一些xml配置,我可以把它放在我的JAR中的任何地方,但不能在JAR之外。
谢谢你的回答。 实际上我的问题不在于我自己的ClassLoader。我正在使用XStream,它想要创建一些类加载器和应用程序崩溃:
java.security.AccessControlException:拒绝访问(java.lang.RuntimePermission createClassLoader) at java.security.AccessControlContext.checkPermission(AccessControlContext.java:323) at java.security.AccessController.checkPermission(AccessController.java:546) 在java.lang.SecurityManager.checkPermission(SecurityManager.java:532) 在java.lang.SecurityManager.checkCreateClassLoader(SecurityManager.java:594) 在java.lang.ClassLoader。(ClassLoader.java:226) 在com.thoughtworks.xstream.core.util.CompositeClassLoader。(CompositeClassLoader.java:50)
答案 0 :(得分:5)
Class.getResource/getResourceAsStream
。
实际上,无论安全策略如何,类都应该始终能够拥有自己的类加载器。