从URL加载JAR文件

时间:2010-08-13 00:36:42

标签: java http jar header

如何在Java中从URL加载JAR文件,同时通过在请求中添加必要的HTTP标头来使文件请求看起来合法。

我知道如何维护加载的JAR文件的唯一方法是使用ClassLoader

我认为我把这个问题钉得很好(或者说这似乎在我的脑海里!)但如果有人需要我提供更多信息才能帮助我,请务必问我。

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

您可以通过在URLStreamHandlerFactory中传递自定义URLClassLoader constructor来传递特定的HTTP标头。

请注意,这与使用URLClassLoader创建newInstance略有不同,因为它不使用checkPackageAccess中的SecurityManager(因此您可能必须自己这样做) )。

或者,也许jcloader可能会引起人们的兴趣(但我还没有尝试过):可能更容易制作更传统的HTTP请求(不使用URLStreamHandlerFactory),可能是您想要的HTTP标头,然后使用其中一个类加载器加载结果(作为InputStream或类似的东西)。

(当然,从远程源加载jar文件还有其他安全隐患,因为您可能需要验证您是否信任此文件的完整性。)