Arhn - архитектура программирования

Не удалось загрузить атрибут манифеста основного класса из ошибки myFile.jar

В качестве IDE я использую IBM Relational Application Developer (RAD). У меня есть один класс Java в моем проекте, и я назвал его extract.java. У меня есть несколько файлов библиотеки и файлов ресурсов, связанных с моим проектом. Я экспортировал свой проект в виде файла jar с помощью IDE и запустил его через командную строку в среде Solaris, используя следующий запрос:

$java -jar myFile.jar 

Я получаю следующую ошибку:

Не удалось загрузить атрибут манифеста основного класса из myFile.jar.

Я видел предложения о том, что файл манифеста необходимо обновить. Я не уверен, что это значит, так как я новичок в java, и любая помощь будет отличной.

PS: нет никаких ошибок, когда я запускаю класс как Java-приложение из IDE на компьютере с Windows.

введите здесь описание изображения

26.09.2016

Ответы:


1

Чтобы сделать JAR исполняемым JAR в RAD, выполните следующие шаги:

  1. Щелкните правой кнопкой мыши проект и выберите Экспорт...
  2. Выберите «Java» > «Запускаемый JAR-файл» и нажмите «Далее».
  3. В поле Конфигурация запуска выберите класс Java, содержащий метод public static void main(String[] args).
  4. Укажите место назначения.
  5. Наконец, определите, как библиотеки, если таковые имеются, в вашем проекте должны быть упакованы в JAR.
  6. Нажмите Готово.

Это должно создать файл манифеста с правильным заголовком основного класса. Запустите JAR с помощью команды java -jar, чтобы убедиться, что он работает.

Надеюсь это поможет.

27.09.2016

2

В файле jar вам нужно добавить или изменить файл /META-INF/MANIFEST.MF, соответствующий манифесту вашего jar, чтобы добавить атрибут Main-Class:

Main-Class: my.package.MyClass

Предполагая, что my.package.MyClass является полным именем класса, у которого есть метод main для вызова при запуске файла jar с java -jar myFile.jar

26.09.2016
  • не могли бы вы помочь мне понять, где я могу добавить этот файл манифеста? это идет в RAD, прежде чем я экспортирую, или это идет в среде Solaris? если мне нужно создать его перед экспортом, где находится этот файл? если после, я предполагаю, что он находится в том же каталоге, что и jar? 26.09.2016
  • он находится внутри вашего файла jar в /META-INF/MANIFEST.MF 26.09.2016
  • Пожалуйста, проверьте файл jar, который я прикрепил к вопросу. я не уверен, как я буду обновлять это? Я открыл это с помощью notepad++. есть ли другой инструмент, который я должен использовать, чтобы открыть его? Кроме того, я просмотрел конфигурации запуска для моего проекта, и MyClass установлен в основной класс. Я думал, что эта информация будет получена при создании файла jar. 26.09.2016
  • На самом деле jar - это zip-архив, в котором у вас есть все ваши файлы классов и ресурсов, поэтому вам нужно добавить новый файл в свой zip-архив. 26.09.2016
  • поэтому добавьте файл с именем META-INF/MANIFEST.MF в мой проект, прежде чем экспортировать его в виде файла jar? 26.09.2016
  • добавил файл MANIFEST.MF в то же место, что и MyClass, перед экспортом проекта в виде jar и получил ту же ошибку, что и раньше. Я не смог назвать свой файл как META-INF/MANIFEST.MF. 26.09.2016
  • нужно создать папку META-INF в которую положить файл MANIFEST.MF 26.09.2016
  • Новые материалы

    Коллекции публикаций по глубокому обучению
    Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

    Представляем: Pepita
    Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

    Советы по коду Laravel #2
    1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

    Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
    Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

    3 способа решить квадратное уравнение (3-й мой любимый) -
    1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

    Создание VR-миров с A-Frame
    Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

    Демистификация рекурсии
    КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..