34得票3回答
Java安全:通过URLClassLoader加载插件的沙箱技术

问题概述:如何修改下面的代码,使不受信任的动态加载代码在安全沙箱中运行,而应用程序的其余部分保持不受限制?为什么URLClassLoader不能像它所说的那样处理它? 我的应用程序具有插件机制,其中第三方可以提供包含实现特定接口的类的JAR。使用URLClassLoader,我可以加载该类并...

23得票7回答
在Java中,是否有可能动态地“添加”类路径?

java -classpath ../classes;../jar;. parserTester 我如何以编程方式获取上述命令中的功能?比如,是否可以运行如下:java parserTester 如何获得相同的结果?我尝试使用URLClassLoader,但它修改了类路径并且没有添加到其中。谢...

21得票2回答
在Java 9下运行时将jar添加到类路径

直到java9,所有人都使用以下方式在运行时以编程方式将外部jar添加到类路径中: URLClassLoader sysloader = (URLClassLoader) ClassLoader.getSystemClassLoader(); Method method = URLClass...

19得票8回答
Java 9,与ClassLoader.getSystemClassLoader兼容性问题

以下代码将jar文件添加到构建路径,它在Java 8中运行良好。但是,在Java 9中,它会抛出与URLClassLoader转换相关的异常。有什么想法可以解决这个问题?最佳解决方案将对其进行编辑,以使其同时适用于Java 8和9。private static int AddtoBuildPa...

19得票6回答
使用URLClassLoader重新加载jar时出现问题

我需要在现有应用程序的某些部分添加插件功能。我希望能够在运行时添加一个jar文件,而应用程序应该能够加载来自jar文件的类,而无需重新启动应用程序。目前为止一切顺利。我在网上找到了一些使用URLClassLoader的示例,并且它运行良好。 我还希望能够在更新版本的jar文件可用时重载同一个...

15得票5回答
Java Web Start替代方案

我们正在寻找一种替代Java Web Start的方案,它可以有效地完成相同的任务,但实现更好。我们遇到了很大的麻烦。我们有几个办公室的XP桌面,都略有不同,到目前为止只有少数几个可以在没有严重调整的情况下正常工作。问题与代理设置不兼容有关(在Java控制面板中使用直接连接可使其正常工作),拒...

14得票5回答
列出jar文件中的类

我该如何动态加载一个jar文件并列出其中的类?

11得票4回答
Hive:使用JDK8仍然出现“AppClassLoader无法转换为URLClassLoader”错误

安装完jdk9后,我一直看到这个问题:$hive Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0 SLF4J: Class path conta...

11得票6回答
如何“关闭”一个ClassLoader?

我有一个需求,需要在我的应用程序中创建大量的类加载器,以便在用户提供的脚本运行时暂时使一些代码可见。我使用URLClassLoader实现了这个功能,并且效果很好。 当脚本终止时,我想要“卸载”或“关闭”类加载器以释放资源。 将类加载器的引用设置为null是否足够?我特别担心因为额外的类在...

8得票1回答
一Jar和动态类加载

我们目前正在研究在应用程序中使用OneJar(由于一些原因),但我们的应用程序使用了许多自定义的URLClassloader来加载应用程序扩展。当打包为“OneJar” Jar时,我们会遇到ClassNotFound异常。所涉及的类位于捆绑的Jar中,我们只是依赖类加载机制来解析父/子关系。也...