Мы работаем над проектом весеннего облака с использованием весеннего ботинка. Наша цель - создать исполняемую войну, которую можно запустить с помощью java -jar.Как создать единую исполняемую войну весенним ботинком
Я следовал за несколькими сообщениями на SO и смог сгенерировать исполняемую войну 1) добавив тег классификатора загрузки. 2) Добавление Упаковать цели в фазе выполнения весенне-загрузка Maven-плагин
Теперь с этим подходом, я получаю две военных файлы: одна войны, которая не является исполняемым, а просто развертываемыми и другой войной с загрузочным классификатором что соответствует моим требованиям
Есть ли способ генерировать только исполняемую команду?
Я крепление pom.xml для удобства
http://maven.apache.org/xsd/maven-4.0.0.xsd "> 4.0.0
<artifactId>discovery-service</artifactId>
<version>1.0.0-SNAPSHOT</version>
<packaging>war</packaging>
<description>
Discovery microservice to provide a service registry using Spring Cloud
and Netflix Eureka for cloud native microservices.
</description>
<properties>
<java.version>1.8</java.version>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.2.3.RELEASE</version>
**<configuration>
<classifier>boot</classifier>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>**
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.6</version>
<configuration>
<failOnMissingWebXml>false</failOnMissingWebXml>
<outputDirectory>target</outputDirectory>
<warName>ROOT</warName>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-eureka-server</artifactId>
</dependency>
</dependencies>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Brixton.SR1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-parent</artifactId>
<version>Brixton.SR1</version>
<type>pom</type>
<scope>import</scope>
</dependency>
</dependencies>
</dependencyManagement>
Ссылки: One Spring Boot project, deploy to both JAR or WAR
Failed to load Main-Class manifest attribute while running java -jar
Вам не нужно добавить любой классификатор. тот, что Spring Загрузочный производит работы в Java -jar _AND_ развернутого в контейнере сервлетов. вы пробовали? –
@Stephane Спасибо за ваш комментарий, война, которая весной загружает продукцию es могут быть развернуты в контейнере сервлетов, и мы не хотели этого делать. Поэтому нам нужна исполняемая война, которую можно запустить с помощью java -jar-команды. Я сделал свою часть исследования, прежде чем публиковать этот вопрос здесь – Narasimha
Чтобы быть более понятным, мы просто хотим использовать встроенный сервер tomcat без развертывания на внешнем контейнере сервлетов – Narasimha