簡體   English   中英

創建特定的URLClassLoader之后,如何以與url顯示到JVM相同的路徑將所有Jars加載?

[英]How to load all Jars in the same path that as url shows into JVM after a certain URLClassLoader had been created?

哦,對不起,我的表達能力很差,我的意思是,現在我創建了一個URLClassLoader A,它的URL []是B,現在我需要動態加載和卸載B中的所有jar。 但是我不知道該怎么做。

類加載器可能是不可變的,這意味着您的代碼無法更改主系統類加載器。 這並不意味着您不能在主類加載器上創建自己的第二個類加載器,但這意味着您可能無法在不重新啟動JVM的情況下從系統類加載器中卸載類。 我懷疑您的問題與以下問題重復: 我應如何在運行時動態加載Jars? 這表明OSGi可能是答案: http : //www.osgi.org/Technology/WhatIsOSGi 這是HelloWorld示例的鏈接。

如果需要更簡單的方法來卸載或添加類,則可以研究使用不同的類路徑重新啟動JVM的方法。 如果您在一個JVM中運行您的應用程序,並且您的應用程序在后台與另一個JVM通訊,則您的主應用程序可能能夠使用其他類路徑重新啟動后台JVM。 只是一個主意。 我不是這方面的專家,因此可能有更巧妙的方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM