Question Projet Maven créé à partir de l'ancien archétype (1.x)


J'essaie d'apprendre Maven suite à cela Guide de Démarrage.

J'ai Apache Maven 3.0.1 sous Linux. J'ai émis la commande suivante pour créer un premier projet:

yes | mvn archetype:generate \
  -DarchetypeGroupId=org.apache.maven.archetypes \
  -DarchetypeArtifactId=maven-archetype-quickstart \
  -DgroupId=org.obliquid.helpers \
  -DartifactId=obliquid-helpers \
  -Dversion=0.1

Cependant, dans la sortie, je lis:

[INFO] project created from Old (1.x) Archetype in dir: ...

Comment puis-je utiliser une version actuelle de l'archétype? Le guide que je lis est-il obsolète?

En tant que sous-question, j'ai remarqué que dans le pom.xml mentionne la version 3.8.1 de junit, alors que je voudrais utiliser la version 4.8.x de Junit - Comment changer cela? Je peux juste changer le numéro de version dans le XML?

Y a-t-il un meilleur guide ou livre que vous pouvez suggérer?


10
2018-06-22 08:48


origine


Réponses:


La version que vous utilisez ainsi que le guide auquel vous faites référence sont à jour. Vous pouvez ignorer le message. Le projet créé fonctionne correctement avec le dernier maven.

En ce qui concerne junit, vous pouvez modifier la version de la dépendance de manière appropriée. Le projet créé à l'aide de l'archétype: generate est uniquement indicatif et doit être personnalisé.

En plus de ce que vous regardez, vous pouvez également regarder Maven: la référence complète


4
2018-06-22 09:24



Si vous incluez -DinteractiveMode = true dans votre archvype mvn: générer la commande:

mvn archetype:generate \
    -DgroupId=org.obliquid.helpers \
    -DartifactId=obliquid-helpers \
    -Dversion=0.1 \
    -DinteractiveMode=true

vous êtes présenté avec un (grand) catalogue d'archétypes mvn disponibles, avec une brève description de chacun.

Actuellement, quelques-uns des meilleurs archétypes d'applications Java simples dans cette liste sont:

1844: remote -> org.spilth:java9-minimalist-quickstart

et

1966: remote -> pl.org.miki:java8-quickstart-archetype

Le second inclut une étendue de test qui utilise la version 4.11 de JUnit pour les tests unitaires. Pour utiliser cet archétype, il vous suffit de spécifier archetypeGroupId et archetypeArtifactId comme dans:

mvn archetype:generate \
    -DarchetypeGroupId=pl.org.miki \
    -DarchetypeArtifactId=java8-quickstart-archetype \
    -DgroupId=org.obliquid.helpers \
    -DartifactId=obliquid-helpers \
    -Dversion=0.1

Pour une raison quelconque, l'archétype mvn: générer suppose archetypeVersion = 1.0 même lorsque les métadonnées de l'archétype indiquent une version différente pour la dernière version.

Pour spécifier une version d’archétype en plus de 1.0, il vous suffit de définir une valeur pour le archetypeVersion propriété, par ex.

mvn archetype:generate \
    -DarchetypeGroupId=org.apache.maven.archetypes \
    -DarchetypeArtifactId=maven-archetype-quickstart \
    -DarchetypeVersion=1.1 \
    -DgroupId=org.obliquid.helpers \
    -DartifactId=obliquid-helpers \
    -Dversion=0.1 \
    -DinteractiveMode=true

Découvrez quelles versions sont disponibles en visitant http://repo.maven.apache.org/maven2/org/apache/maven/archetypes/maven-archetype-quickstart/ avec un navigateur Web.


0
2017-12-11 05:44