我有一個應用程序用於羣集,以保持它可用,如果一個或多個失敗,我想實現一種方法來檢查在Java中的jar文件的版本。獲取JAR文件版本號
我有這樣一段代碼這樣做(例如:在MyClass類):
URLClassLoader cl = (URLClassLoader) (new MyClass())
.getClass().getClassLoader();
URL url = cl.findResource("META-INF/MANIFEST.MF");
Manifest manifest = new Manifest(url.openStream());
attributes = manifest.getMainAttributes();
String version = attributes.getValue("Implementation-Version");
當我運行的罐子,因爲它工作正常,但應用程序時,我使用的jar文件作爲LIBRAIRIE在另一個應用程序中,我得到另一個應用程序的版本號。
所以我的問題是,我如何獲得包含MyClass的jar的清單?
注:我沒有興趣在溶液中使用靜態約束像 'classLoader.getRessource( 「MyJar.jar」)' 或文件( 「MyJar.jar」)
是的,我也發現這個解決方案,但它不能解決我的問題,因爲我必須知道我的jar文件的限定名稱。我想要一個動態的解決方案,可以在不受限制的情況下工作,如文件名:/ .. – Kraiss
好的,讓我在某個時間後再次發佈。 –
好吧,我有一個解決方案!謝謝你!!只是讓時間來發布它;) – Kraiss