Maven: Comment changer le chemin du répertoire cible à partir de la ligne de commande?

Maven: Comment changer le chemin du répertoire cible à partir de la ligne de commande?

(Je veux utiliser un autre répertoire cible dans certains cas)

Vous devez utiliser des profils.

   otherOutputDir  yourDirectory    

Et commencez maven avec votre profil

 mvn comstack -PotherOutputDir 

Si vous voulez vraiment définir votre répertoire à partir de la ligne de commande, vous pouvez faire quelque chose comme ça ( NON recommandé du tout ):

  ${project.basedir}/target   ${buildDirectory}  

Et comstackr comme ça:

 mvn comstack -DbuildDirectory=test 

C’est parce que vous ne pouvez pas changer le répertoire cible en utilisant -Dproject.build.directory

Colin a raison d’utiliser un profil. Cependant, sa réponse codifie en dur le répertoire cible dans le profil. Une autre solution consisterait à append un profil comme celui-ci:

   alternateBuildDir   alt.build.dir    ${alt.build.dir}   

Cela aurait pour effet de modifier le répertoire de compilation en fonction de la propriété alt.build.dir, qui peut être donnée dans un POM, dans les parameters de l’utilisateur ou sur la ligne de commande. Si la propriété n’est pas présente, la compilation se produira dans le répertoire cible normal.

Ma solution:

  • dans pom.xml:

       org.apache.maven.plugins maven-jar-plugin 2.3.2  ${dir}   
  • commande en bash:

    mvn package -Ddir="/home/myuser/"