错误执行maven命令后,“您指定的目标需要执行一个项目,但是这个目录中没有POM”

我在C:\Users\AArmijos\Desktop\Factura Electronica\MIyT\componentes-1.0.4\sources\pom.xml ,我执行了:

 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 

但是它返回了下面的错误:

 [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] 

有人可以解释为什么它失败?

这个链接帮助: https : //stackoverflow.com/a/11199865/1307104

我编辑我的命令通过像这样的每个参数添加引号:

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"

它的工作。

对于那些在Windows上遇到这种情况的人,以上都没有工作,请尝试从cmd.exe运行。 通过PowerShell执行这些命令导致安装每次都失败。

为Windows用户添加一个更多的答案。 如果这些都不能解决问题。

=之前或之后不要添加space

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

最好把所有内容放在双引号内,比如“-DgroupId = com ..”,这会给你确切的错误,而不是一些随机的错误。

奇怪的是,maven甚至不在乎在文档中提到这一点。

1.在你的项目文件中创build一个lib文件夹,

2.将你的jar文件复制到lib文件夹

3.右键单击你的jar文件去构buildpath>添加到构buildpath(现在你的jar文件是你的refrerenced库的一部分)

4.打开命令提示符并导航到您的项目目录并写入

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

6.在eclipse中打开本地资源库索引 – 转到窗口> show view> other> maven> maven Repositories。 右键单击本地存储库,然后点击“RebuildIndex”

5.打开你的pom.xml文件并添加你的依赖关系

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

并运行

 mvn clean mvn compile mvn test 

在我所关心的窗口中,必须用引号括起所有的参数。

所以如果你想创build一个maven webapp原型,你可以这样做:

先决条件:

  1. 确保你已经安装了maven,并把它放在你的PATH环境variables中。

如何:

  1. 打开Windows PowerShell
  2. mkdir MyWebApp
  3. cd MyWebApp
  4. mvn archetype:生成“-DgroupId = com.javan.dev”“-DartifactId = MyWebApp”“-DarchetypeArtifactId = maven-archetype-webapp”“-DinteractiveMode = false”

在这里输入图像说明

注意:这仅在Windows 10 PowerShell上进行testing

请从POM.XML所在的目录运行。

mvn clean更改为mvn clean --file *.pom为我解决了这个问题。

在Windows上,在非pipe理员命令提示符下运行时出现此错误。 当我以pipe理员身份运行时,错误消失了。

“你指定的目标需要一个项目执行”:答案在你的问题。 我面临同样的问题。 在项目文件夹中运行“mvn命令” ,同时确保它的mavenconfiguration项目,因此包含“POM.xml”文件,你应该很好去!

我突然在Netbeans中得到了这个错误(但是它从命令行运行),结果有一些其他程序改变了命令提示符的默认目录。 而且因为Netbeans在调用maven时运行“cmd / c”,它会在一个不正确的目录中启动。

在Regedit中查看值

 HKEY_CURRENT_USER\Software\Microsoft\Command Processor\Autorun 

如果已设置,则可能应将其删除以解决问题。 (1)

(当我试图解决这个问题的时候降落在这里,可能不是100%适用于当前的问题 – 但可能帮助其他人)

(1) 在Windows 7中更改命令提示符的默认启动目录

  • maven命令的执行需要pom.xml文件,其中包含有关Maven构build项目所使用的项目和configuration细节的信息。 它包含大多数项目的默认值。

  • 确保porject应该在根级别包含pom.xml。