首頁 > Java > java教程 > 如何在 Java 中存取您自己的 Jar 的清單?

如何在 Java 中存取您自己的 Jar 的清單?

Linda Hamilton
發布: 2024-11-12 11:38:02
原創
977 人瀏覽過

How to Access the Manifest of Your Own Jar in Java?

閱讀您自己的Jar 的清單

存取與您自己的類別關聯的清單檔案可能是一個挑戰,特別是在使用getClass( ).getClassLoader().getResource(...)。如果從 applet 或 webstart 環境調用,此方法可能會從不同的 .jar 檔案傳回清單。

要克服此限制,請考慮以下解決方案:

1。迭代清單 URL

迭代 getResource(...) 傳回的 URL 並將它們作為清單讀取,直到找到正確的 URL:

Enumeration<URL> resources = getClass().getClassLoader()
   .getResources("META-INF/MANIFEST.MF");
while (resources.hasMoreElements()) {
     try {
       Manifest manifest = new Manifest(resources.nextElement().openStream());
       // check that this is your manifest and do what you need or get the next one
       ...
     } catch (IOException E) {
       // handle
     }
}
登入後複製

2 。使用URLClassLoader

如果getClass().getClassLoader() 是java.net.URLClassLoader 的實例,您可以強制轉換並使用findResource(...):

URLClassLoader cl = (URLClassLoader) getClass().getClassLoader();
try {
   URL url = cl.findResource("META-INF/MANIFEST.MF");
   Manifest manifest = new Manifest(url.openStream());
   // do stuff with it
   ...
} catch (IOException E) {
   // handle
}
登入後複製

眾所周知,這種方法可以返回正確的小程式清單。

以上是如何在 Java 中存取您自己的 Jar 的清單?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板