IntelliJ Maven JAR «Нет ошибки основного атрибута манифеста»

#java #maven #intellij-idea

#java #maven #intellij-idea

Вопрос:

Пытаюсь настроить простой проект для запуска простого http-сервера.

Создал проект Maven вместе с groupId / artifactId / version и так далее и смог настроить так, чтобы IDE могла интерпретировать и запускать программу. В настоящее время на Java 1.8.

Однако, чего я пытаюсь достичь, так это выполнения инструкций в терминале с mvn clean package , если я введу, "java -jar Some.jar" , это должно запустить программу, но этого не произойдет.

Я попытался создать META-INF/MANIFEST.MF в папке ресурсов внутри src/ или java/ или в корневом каталоге проекта, но ничего не сработало.

Я менялся, пробуя разные вещи pom.xml , но просто не повезло. Это простая настройка, но я был бы признателен, если кто-нибудь сможет подсказать мне, или какие шаги я должен предпринять. Спасибо!

Комментарии:

1. Вы настроили переменную java_home env?

2. Делает maven.apache.org/shared/maven-archiver/examples / … ответить на ваш вопрос?

3. @CrazyCoder Каким-то образом это сработало.. Я пробовал что-то подобное прошлой ночью, но каким-то образом это сработало. Спасибо!!

Ответ №1:

Чтобы сделать jar, созданный Maven, исполняемым, добавьте следующую конфигурацию в pom.xml :

 <project>
  ...
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        ...
        <configuration>
          <archive>
            <manifest>
              <addClasspath>true</addClasspath>
              <mainClass>fully.qualified.MainClass</mainClass>
            </manifest>
          </archive>
        </configuration>
        ...
      </plugin>
    </plugins>
  </build>
  ...
</project>
  

Ключевая строка здесь <mainClass>fully.qualified.MainClass</mainClass> .