7
votes

Maven Install-Fichier ne générera pas pom.xml

J'ai installé des bocaux tiers à mon référentiel à l'aide de la commande suivante: XXX PRE>

Cependant, une fois que je fais la compilation MVN, Maven se plaint qu'il n'y a pas de fichier POM dans le référentiel et tente de le télécharger, mais je ne peux pas causer qu'il n'est publié dans aucun référentiel à distance. P>

Voici le message exact de Maven: P>

Downloading: http://repo1.maven.org/maven2/nifty-gui/nifty-gui/1.0/nifty-gui-1.0.pom
[INFO] Unable to find resource 'nifty-gui:nifty-gui:pom:1.0' in repository central (http://repo1.maven.org/maven2)


0 commentaires

4 Réponses :


2
votes

Le Installation: Install-file Objectif a un paramètre facultatif GeneratePom (depuis la version 2.1) qui permet de:

Générer un POM minimal pour le artefact si aucun n'est fourni via la Paramètre pomfile .
Par défaut à vrai s'il n'y a pas de pom existant dans le référentiel local encore.

Ce paramètre par défaut sur true depuis version 2.3 (et false in 2.1 , 2.2). Donc, si vous utilisez une version du plugin d'installation avant 2.3, vous devrez transmettre le paramètre dans la commande.

Juste au cas où la syntaxe utilise explicitement la version 2.3 du plug-in Installation serait la suivante: xxx


2 commentaires

La documentation Plug-in indique que le drapeau "GeneratePom" par défaut est vrai, mais j'ai toujours dû le fournir manuellement. Une vérification rapide du code source du plug-in ressemble à des défauts de défaut sur FALSE.


Hmmm. Au deuxième regard, je suis d'accord que le code semble par défaut à l'équivalent de "TRUE". Pour une explication de ma confusion, voir mon édition sur ma réponse ... merci!



15
votes

Vous le dites! : -)

> touch DeleteMe.jar
> mvn install:install-file -DgroupId=Delete -DartifactId=Me -Dversion=0.0.0 -Dpackaging=jar -Dfile=DeleteMe.jar
...
[INFO] BUILD SUCCESSFUL
...
> ls ~/.m2/repository/Delete/Me/0.0.0/
Me-0.0.0.jar


1 commentaires

Je ne faisais pas passer l'option GeneratePom car la documentation indiquait qu'il est par défaut à vrai. Je vais mettre à jour mon logiciel pour vous assurer que tout est synchronisé. Merci!



-1
votes

Eh bien et au cas où votre bibliothèque tierce partie est vraiment "graphique nifty", tout ce que vous avez à faire est d'ajouter le référentiel Nifty Maven à votre POM.XML:

<repositories>
  <repository>
    <id>nifty-maven-repo.sourceforge.net</id>
    <url>http://nifty-gui.sourceforge.net/nifty-maven-repo</url>
  </repository>
</repositories>


0 commentaires

0
votes

J'avais le même problème que je pense que vous le pensez, j'avais un script shell à l'aide de l'installation d'installation: Installez le fichier de fichier comme ceci: xxx

couple de choses à noter:

artifactide ne peut pas contenir '.' ' ... Je ne sais pas pourquoi, mais l'installation échouerait si cela contenait ""

exécutant la commande ci-dessus n'a généré qu'un POM avec Maven 3.x. En ajoutant les arguments suivants, j'ai pu amener le pot à être copié: xxx


0 commentaires