Доступны ли значения, определенные в MANIFEST.MF программно?
Могу ли я получить доступ к значениям, определенным в манифесте Java из кода?
- API формата номера телефона Java
- SimpleXML выбрасывает XmlPullParserException, unterminited entity ref без причины
- Как сделать снимок экрана в Java?
- Неверные данные местоположения Android GPS по запросу
- Регистрация кнопки гарнитуры с помощью BroadcastReceiver на Android
- Как нарисовать круг внутри круга с помощью форм xml?
- Получение программной версии ОС на Android программно
- в чем разница между i ++ и ++ i in for loop (Java)?
Откройте файл с помощью JarFile
а затем вызовите getManifest()
чтобы получить Manifest
. После этого вы можете получить доступ к атрибутам соответствующим образом.
Многие из значений в MANIFEST.MF могут быть доступны программно без необходимости поиска и / или открытия самого файла jar.
Класс java.lang.Package
предоставляет доступ к ImplementationTitle
, ImplementationVendor
, ImplementationVersion
, SpecificationTitle
, SpecificationVendor
и SpecificationVersion
.
Информация о подписанных classах может быть найдена с использованием classа CodeSource
, который может быть .getProtectionDomain()
через Class
.getProtectionDomain()
.getCodeSource()
Вот простой пример чтения основных атрибутов из манифеста JAR in situ . Это удобно для проверки того, что на самом деле существует.
Используйте следующий способ для обнаружения информации внешнего флага JAR / SDK MANIFEST.MF. Мы могли бы использовать эту информацию для обнаружения версии Jar и т. Д. Используйте http://docs.oracle.com/javase/6/docs/api/java/util/jar/Manifest.html
public void getSDKInfo() { Package pkg = Manifest.class.getPackage(); String specTitle = pkg.getSpecificationTitle(); String vendor = pkg.getSpecificationVendor(); String version = pkg.getSpecificationVersion(); }
Попробуйте com.jcabi.manifests.Manifests
class утилиты из jcabi-manifestests . Используя этот class, вы можете прочитать все доступные файлы MANIFEST.MF с одним слоем:
String name = Manifests.read("Foo-Name");
Также см. Эту статью: http://www.yegor256.com/2014/07/03/how-to-read-manifest-mf.html