web-dev-qa-db-fra.com

Erreur "L'objectif que vous avez spécifié nécessite l'exécution d'un projet mais il n'y a pas de POM dans ce répertoire" après l'exécution de la commande maven

J'ai un pom.xml dans C:\Users\AArmijos\Desktop\Factura Electronica\MIyT\componentes-1.0.4\sources\pom.xml et j'ai exécuté:

mvn install:install-file -DgroupId=es.mityc.jumbo.adsi -DartifactId=xmlsec-1.4.2-ADSI -Dversion=1.0 -Dpackaging=jar -Dfile=C:\Users\AArmijos\Desktop\Factura Electronica\MIyT\componentes-1.0.4\core\xmlsec-1.4.2-ADSI-1.0.jar

cependant, il a renvoyé l'erreur ci-dessous:

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.310s
[INFO] Finished at: Thu May 02 16:48:29 COT 2013
[INFO] Final Memory: 2M/15M
[INFO] ------------------------------------------------------------------------
[ERROR] The goal you specified requires a project to execute but there is no POM
 in this directory (C:\Users\AArmijos). Please verify you invoked Maven from the
 correct directory. -> [Help 1]

Quelqu'un peut-il expliquer pourquoi cela échoue?

103
Adrian

Ce lien a aidé: https://stackoverflow.com/a/11199865/1307104

J'édite ma commande en ajoutant des guillemets pour chaque paramètre comme ceci:

mvn install:install-file "-DgroupId=org.mozilla" "-DartifactId=jss" "-Dversion=4.2.5" "-Dpackaging=jar" "-Dfile=C:\Users\AArmijos\workspace\componentes-1.0.4\deps\jss-4.2.5.jar"

Ça a marché.

152
Adrian

Si vous rencontrez des problèmes sous Windows et que rien de ce qui précède n'a fonctionné, essayez d'exécuter cette opération à partir de cmd.exe. L'exécution de ces commandes via PowerShell a entraîné l'échec de l'installation à chaque fois.

32
Josh Sullivan

Pour ce qui est des fenêtres, vous devez inclure tous les paramètres entre guillemets.

Donc, si vous voulez créer un archétype maven webapp, procédez comme suit:

Conditions préalables:

  1. Assurez-vous d’avoir installé maven et de l’avoir dans votre variable d’environnement PATH.

Comment:

  1. Fenêtres ouvertes powershell
  2. mkdir MyWebApp
  3. cd MyWebApp
  4. mvn archetype: generate "-DgroupId = com.javan.dev" "-DartifactId = MonWebApp" "-DarchetypeArtifactId = maven-archetype-webapp" "-DinteractiveMode = false"

enter image description here

Remarque: Ceci est testé uniquement sur Windows 10 PowerShell

19
J.Javan

Ajouter une réponse supplémentaire pour les utilisateurs Windows. Si rien de tout cela ne résout les problèmes.

N'ajoutez pas space avant ou après =

-DgroupId= com.company.module //Wrong , Watch the space after the equal to 
-DgroupId=com.company.module //Right 

Il est préférable de tout mettre entre guillemets, comme "-DgroupId = com .." Cela vous donnera l'erreur exacte plutôt qu'une erreur aléatoire.

Bizarre que cela, Maven ne se soucie même pas de le mentionner dans la documentation.

8
madhairsilence

Dans mon cas, c’est parce que j’ai copié la commande collée à partir du navigateur et qu’il s’est avéré que le tiret n’était pas le tiret ASCII, il suffit de supprimer et de taper à nouveau le tiret.

http://www.toptip.ca/2017/04/maven-most- weird-error-causing-failure.html

3
Mideel

1.créer un dossier lib dans votre fichier de projet,

2.copiez vos jarFiles dans le dossier lib

3. Cliquez avec le bouton droit de la souris sur votre fichier jar. Allez au chemin de construction> Ajouter au chemin de construction (votre fichier jar fait maintenant partie de vos bibliothèques référencées)

4. Ouvrez la commande Invite et naviguez vers votre répertoire de projet et écrivez

mvn install: install-file "-Dfile=<yourJarFileName>.jar" "-DgroupId=<yourGroupID>" "-DartifactId=<yourArtifactId>" "-Dversion=<yourVersion>" "-Dpackaging=jar" 

6. Recréez votre index de référentiel local en l'ouvrant dans Eclipse: accédez à la fenêtre> afficher la vue> autre> maven> référentiels maven. Faites un clic droit sur les dépôts locaux et cliquez sur "RebuildIndex"

5.ouvrez votre fichier pom.xml et ajoutez votre dépendance

    <dependency>
        <groupId><yourGroupID></groupId>
        <artifactId><yourArtifactId></artifactId>
        <version><yourVersion></version>
    </dependency>

et courir

mvn clean
mvn compile 
mvn test 
1
CTester
  • L'exécution de la commande maven a nécessité un fichier pom.xml contenant des informations sur le projet et les détails de configuration utilisés par Maven pour générer le projet. Il contient des valeurs par défaut pour la plupart des projets.

  • Assurez-vous que ce projet doit contenir pom.xml au niveau racine.

0
Nanda Balakrishnan

Ajoutez le fichier Jenkins où se trouve le fichier pom.xml. Indiquez le chemin du répertoire sur dir ('project-dir'),

Ex:

node {

    withMaven(maven:'maven') {

        stage('Checkout') {
            git url: 'http://xxxxxxx/gitlab/root/XXX.git', credentialsId: 'xxxxx', branch: 'xxx'
        }

        stage('Build') {

            **dir('project-dir') {**
                sh 'mvn clean install'

                def pom = readMavenPom file:'pom.xml'

                print pom.version
                env.version = pom.version
            }
        }
    }
}
0

Remplacer mvn clean par mvn clean --file *.pom a résolu ce problème.

0
Matthias Braun

Sous Windows, j'ai eu cette erreur lors de l'exécution sous l'invite d'une commande non-administrateur. Quand j'ai exécuté ceci en tant qu'administrateur, l'erreur est partie.

0
tcb

J'ai soudainement eu cette erreur dans Netbeans (mais cela fonctionnait à partir de la ligne de commande) et il s'avère qu'un autre programme avait changé le répertoire par défaut de la commande Invite. Et parce que Netbeans exécute "cmd/c" lors de l'appel de maven, il démarre dans un répertoire incorrect.

Vérifier dans Regedit la valeur pour

HKEY_CURRENT_USER\Software\Microsoft\Command Processor\Autorun  

S'il a été défini, vous devriez probablement le supprimer pour résoudre le problème. (1)

(J'ai atterri ici en essayant de résoudre ce problème, pourrait ne pas être applicable à 100% à la question actuelle - mais pourrait aider les autres)

(1) Modification du répertoire de démarrage par défaut de l'invite de commande sous Windows 7

0
AtliB