Package un ressort de démarrage de l'application, y compris les Jsp et les ressources statiques
Je veux un paquet de printemps-démarrage de l'application que le pot, et je le fais avec mvn package
.
Ce qui produit un pot qui ne contiennent pas de /WEB-INF/jsp
ni /src/main/webapp/resources
.
Comment puis-je m'assurer que mon pot contient tout le nécessaire ?
Ici mon pom.xml
:
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-samples</artifactId>
<version>1.0.0.RC3</version>
</parent>
<packaging>jar</packaging>
<properties>
<main.basedir>${basedir}/../..</main.basedir>
<m2eclipse.wtp.contextRoot>/</m2eclipse.wtp.contextRoot>
</properties>
<dependencies>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>${project.groupId}</groupId>
<artifactId>spring-boot-starter-tomcat</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-jasper</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-jdbc</artifactId>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
</dependency>
<dependency>
<groupId>org.postgresql</groupId>
<artifactId>postgresql</artifactId>
<version>9.3-1101-jdbc41</version>
</dependency>
</dependencies>
<!-- Package as an executable JAR -->
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<useSystemClassLoader>false</useSystemClassLoader>
</configuration>
</plugin>
</plugins>
</build>
<!-- Allow access to Spring milestones and snapshots -->
<!-- (you don't need this if you are using anything after 1.0.0.RELEASE) -->
<repositories>
<repository>
<id>spring-snapshots</id>
<url>http://repo.spring.io/snapshot</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<url>http://repo.spring.io/milestone</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>spring-snapshots</id>
<url>http://repo.spring.io/snapshot</url>
</pluginRepository>
<pluginRepository>
<id>spring-milestones</id>
<url>http://repo.spring.io/milestone</url>
</pluginRepository>
</pluginRepositories>
<artifactId>com.example.app</artifactId>
OriginalL'auteur yglodt | 2014-03-01
Vous devez vous connecter pour publier un commentaire.
L'exemple suivant fonctionne avec Spring Boot 1.3.3.LIBÉRATION:
https://github.com/ghillert/spring-boot-jsp-demoLa clé est de mettre la statique jsp contenu dans:
et assurez-vous de définir le point de vue de préfixe/suffixe dans votre application.propriétés:
OriginalL'auteur jz15
Est-il une raison pourquoi vous ne pouvez pas utiliser la guerre type d'emballage? https://maven.apache.org/plugins/maven-war-plugin/usage.html
Je vous recommande d'utiliser la guerre type d'emballage et d'utiliser la valeur par défaut de maven web-structure de l'application.
Si vous voulez vraiment utiliser le pot de plugin pour votre application web, vous devez le configurer pour votre projet. Suite à votre message, je ne comprends pas votre structure et ne peut pas vous donner un exemple. Découvrez l'utilisation de jar du plugin ici:https://maven.apache.org/plugins/maven-war-plugin/usage.html
J'ai essayé avec la guerre de l'emballage, et il fonctionne. java-jar myfile.la guerre avait l'air un peu étrange, mais ça fonctionne. Merci !
OriginalL'auteur Martin Baumgartner
Changer votre balise de construction
OriginalL'auteur Preetam Myneni
Pour créer un exécutable JAR avec Spring Boot, utilisez le spring-boot-maven-plugin dans votre pom.xml
Vous voudrez peut-être jeter un oeil à mon exemple d'application de http://info.michael-simons.eu/2014/02/20/developing-a-web-application-with-spring-boot-angularjs-and-java-8/ (Source sur GitHub, l'App est en ligne et fonctionne à partir d'un POT).
Une chose que vous devez noter: JSP du POT ne fonctionne pas en raison de certaines Tomcat intégré problèmes. Je suis en utilisant Thymeleaf. Si vous avez besoin de JSP, de rester avec la GUERRE de déploiement.
OriginalL'auteur Michael Simons