Existe-t-il une approche spécifique recommandée pour l’inclusion du pom parent Spring-Boot dans les projets qui ont déjà un POM parent requirejs?
Que recommandez-vous pour les projets qui doivent s’étendre d’un parent organisationnel (ceci est extrêmement commun et même quelque chose que beaucoup / la plupart des projets ont publié dans Maven central en fonction des pensions alimentaires qu’ils proviennent). La plupart des éléments de construction sont liés à la création de fichiers JAR exécutables (par exemple, l’exécution de Tomcat / Jetty intégré). Il existe des moyens de structurer les choses afin que vous puissiez obtenir toutes les dépendances sans sortir d’un parent (similaire à la composition et à l’inheritance). Vous ne pouvez pas obtenir un truc de construction de cette façon.
Il est donc préférable d’inclure tous les pom parents de boot-boot à l’intérieur du POM parent requirejs ou simplement d’avoir une dépendance POM dans le fichier POM du projet.
Autres options?
TIA,
Scott
Vous pouvez utiliser le parent-démarrage-spring-starter comme un “bom” (cf. les autres projets Spring et Jersey qui supportent cette fonctionnalité maintenant), et l’inclure uniquement dans la section de gestion des dépendances avec scope = import. des avantages de l’utiliser (c.-à-d. la gestion des dépendances) sans remplacer les parameters de votre parent réel.
Les 2 autres principales choses qu’il fait sont
Exemple fourni dans la documentation de Spring Boot :
org.springframework.boot spring-boot-dependencies 1.1.5.RELEASE pom import
Mise à jour 2018-01-04 avec 1.5.9.RELEASE.
J’ai le code complet et exemple exécutable ici https://www.surasint.com/spring-boot-with-no-parent-example/
Vous avez besoin de cela comme base
org.springframework.boot spring-boot-dependencies ${springframework.boot.version} pom import
Mais cela ne suffit pas, vous devez également définir explicitement goal pour spring-boot-maven-plugin (si vous utilisez Spring Boot en tant que parent, vous n’avez pas à le définir explicitement)
org.springframework.boot spring-boot-maven-plugin ${springframework.boot.version} repackage
Sinon, vous ne pouvez pas créer de jar ou de guerre exécutable.
Pas encore, si vous utilisez JSP, vous devez avoir ceci:
false
Sinon, vous obtiendrez ce message d’erreur:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-war-plugin:2.2:war (default-war) on project spring-boot-09: Error assembling WAR: webxml atsortingbute is required (or pre-existing WEB-INF/web.xml if executi ng in update mode) -> [Help 1]
NON, cela ne suffit toujours pas si vous utilisez Maven Profile et Resource Filter avec Spring Boot avec “@” au lieu de “$ {}” (comme cet exemple https://www.surasint.com/spring-boot-maven -resource-filter / ). Ensuite, vous devez explicitement append ceci dans
src/main/resources true
Et ceci dans
org.apache.maven.plugins maven-resources-plugin 2.7 @ false
Voir l’exemple dans le lien https://www.surasint.com/spring-boot-with-no-parent-example/ .