J'essaye de lancer un projet avec Maven. Mon projet POM contient des dépendances -SNAPSHOT, donc pour exécuter la version automatiquement, je veux utiliser la commande maven suivante, basée sur les objectifs "maven-release-plugin": mvn release: prepare-with-pom pour préparer le fichier pom.xml du projet pour libérer et résoudre automatiquement les dépendances des versions -SNAPSHOT sans les éditer à la main. Malheureusement, j'ai trouvé que cela fonctionne uniquement en mode interactif à partir de la ligne de commande. L'idée est que je me demande si cela peut être fait sans interaction manuelle. J'utilise Bamboo comme serveur CI et je veux avoir ceci dans un plan et exécuter ce projet libérant automatiquement. L'argument --non-interactive ou -B ne fonctionne pas, en fait, si j'utilise -B ou --non-interactive, l'objectif maven échoueVersion Maven: prepare-with-pom non-interactive
la sortie pour mvn release: prepare-with- pom est ceci:
H:\APPS\dev\cmtest\test-dependency\trunk>mvn release:prepare-with-pom -DdryRun=t
rue
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Building test-dependency 0.0.4-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-release-plugin:2.0:prepare-with-pom (default-cli) @ test-depend
ency ---
[INFO] Resuming release from phase 'check-dependency-snapshots'
[INFO] Checking dependencies and plugins for snapshots ...
There are still some remaining snapshot dependencies.: Do you want to resolve th
em now? (yes/no) no: : yes
Dependency type to resolve,: specify the selection number (0:All 1:Project Depe
ndencies 2:Plugins 3:Reports 4:Extensions): (0/1/2/3) 1: : 1
Resolve Project Dependency Snapshots.: '${artifactGroup}:${artifactId}' set to releas
e? (yes/no) yes: : yes
What is the next development version? (0.1.3-SNAPSHOT) 0.1.3-SNAPSHOT: :
'${artifactGroup}:${artifactId1}_1' set to release? (yes/no) yes: : yes
What is the next development version? (0.0.2-SNAPSHOT) 0.0.2-SNAPSHOT: :
'${artifactGroup}:parent-pom' set to release? (yes/no) yes: : yes
What is the next development version? (0.0.3-SNAPSHOT) 0.0.3-SNAPSHOT: :
What is the release version for "test-dependency"? (${artifactGroup}:${artifactId1}_2) 0.0.4: :
What is SCM release tag or label for "test-dependency"? (${artifactGroup}:${artifactId1}_2) test-dependency-0.0.4: :
What is the new development version for "test-dependency"? (${artifactGroup}:${artifactId1}_2) 0.0.5-SNAPSHOT: :
[INFO] Transforming '${artifactId1}_2'...
[INFO] Updating ${artifactId1}_1 to 0.0.1
[INFO] Updating ${artifactId1} to 0.1.2
[INFO] Generating release POMs...
[INFO] Generating release POM for 'test-dependency'...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
Alors, pouvez-vous me aider à satisfaire à trouver une astuce pour effectuer cette commande Maven en mode non-interactif? Merci beaucoup
oui, je n'ai pas considéré cela. l'idée est que j'ai un parent pom.xml où je garde toutes les versions des projets enfants. J'ai choisi de cette façon afin de savoir à tout moment quelle version de projet enfant j'ai pour chaque version. le problème que j'ai est en ce qui concerne le processus de publication, parce que quand je veux publier un projet enfant, il demande la version du projet parent. Donc j'ai un problème circulaire ici: je ne peux pas libérer mon parent.pom d'abord parce que j'ai besoin de voir tous les projets enfants publiés, et je ne peux pas libérer les enfants d'abord parce qu'ils ont besoin de la version parent – Asgard