J'ai rencontré des erreurs lorsque j'ai essayé d'installer un artefact manuellement avec Maven 2. Je voulais installer un fichier jar à partir d'un répertoire local avec la commande
mvn install:install-file -Dfile=jta-1.0.1B.jar
Mais Maven a donné une erreur de construction qui se lit comme suit:
Invalid task '.01B.jar': you must
specify a valid lifecycle phase, or a
goal in the format plugin:goal or
pluginGroupId:pluginArtifactId:pluginVersion:goal
Y a-t-il une erreur avec ma commande?
Vous devez indiquer le groupId, le artifactId et la version de votre artefact:
mvn install:install-file \
-DgroupId=javax.transaction \
-DartifactId=jta \
-Dpackaging=jar \
-Dversion=1.0.1B \
-Dfile=jta-1.0.1B.jar \
-DgeneratePom=true
Selon maven's Guide pour l'installation de fichiers JAR tiers , la commande est la suivante:
mvn install:install-file -Dfile=<path-to-file> -DgroupId=<group-id> \
-DartifactId=<artifact-id> -Dversion=<version> -Dpackaging=<packaging>
Vous avez en effet besoin de l’option d’emballage. Cela répond à la question initiale.
Maintenant, dans votre contexte, vous vous battez avec un pot fourni par Sun. Vous devriez également lire la page Faire face à Sun JAR . Vous y apprendrez comment aider maven à vous fournir de meilleures informations sur l'emplacement de Sun Jars et à ajouter Java.net référentiel Maven 2 qui contient jta-1.0.1B.jar
. Ajoutez ceci dans votre settings.xml
(non portable) oupom.xml
(portable):
<repositories>
<repository>
<id>maven2-repository.dev.Java.net</id>
<name>Java.net Repository for Maven</name>
<url>http://download.Java.net/maven/2/</url>
<layout>default</layout>
</repository>
</repositories>
J'ai dû ajouter un emballage, donc:
mvn install:install-file \
-DgroupId=javax.transaction \
-DartifactId=jta \
-Dversion=1.0.1B \
-Dfile=jta-1.0.1B.jar \
-DgeneratePom=true \
-Dpackaging=jar
La réponse est d'échapper au tiret!
Si vous rencontrez des erreurs similaires lors de l’utilisation de Windows PowerShell, essayez plutôt la simple ligne de commande de Windows. Je n'ai pas trouvé la cause, mais PowerShell semble interpréter certains paramètres de Maven.
Toutes les réponses postées en discutent à juste titre dans une perspective strictement maven. Mon problème était de faire cette installation pour maven en utilisant Netbeans comme IDE principal. J'ai trouvé l'article ci-dessous utile.
Crédit pour l'article suivant du forum Netbeans: http://forums.netbeans.org/topic22907.html