Java,Classpath,Classload=>同一個JAR/項(xiàng)目的多個版本我知道這對有經(jīng)驗(yàn)的程序員來說可能是個愚蠢的問題。但是我有一個庫(一個http客戶機(jī)),這是我的項(xiàng)目中使用的其他一些框架/JAR所需要的。但它們都需要不同的主要版本,如:httpclient-v1.jar => Required by cralwer.jar
httpclient-v2.jar => Required by restapi.jar
httpclient-v3.jar => required by foobar.jar類加載器是否有足夠的智能來區(qū)分它們?很可能不是?如果一個類在所有三個JAR中是相同的,那么ClassLoader是如何處理這個問題的。哪個是裝的為什么?ClassLoader是只拾取一個JAR,還是任意混合類?例如,如果一個類是從Version1.jar加載的,那么從同一個類加載器加載的所有其他類都會進(jìn)入同一個JAR?你如何處理這個問題?是否存在某種方法將這些罐子“合并”到“requd.jar”中,從而使“一個單元/包”被Classloader還是有某種聯(lián)系?
Java,Classpath,Classload=>同一個JAR/項(xiàng)目的多個版本
慕田峪9158850
2019-10-21 16:12:57