Maven项目创建命令卡住了

时间:2015-07-16 11:39:42

标签: java maven

我正在尝试使用以下Maven命令创建一个Jave Web项目

mvn archetype:generate -DgroupId=com.mazhar.event -DartifactId=EventBook2 -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

并且该过程停留在Genrating project in batch mode

[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] >>> maven-archetype-plugin:2.3:generate (default-cli) @ standalone-pom >>>
[INFO]
[INFO] <<< maven-archetype-plugin:2.3:generate (default-cli) @ standalone-pom <<<
[INFO]
[INFO] --- maven-archetype-plugin:2.3:generate (default-cli) @ standalone-pom ---
[INFO] Generating project in Batch mode

这是我的系统详情

mvn -vsersion
Apache Maven 3.1.1 (0728685237757ffbf44136acec0402957f723d9a; 2013-09-17 20:22:22+0500)
Maven home: D:\servers\apache-maven\bin\..
Java version: 1.6.0_32, vendor: Sun Microsystems Inc.
Java home: C:\Program Files (x86)\Java\jdk1.6.0_32\jre
Default locale: en_US, platform encoding: Cp1252
OS name: "windows 7", version: "6.1", arch: "x86", family: "windows"

5 个答案:

答案 0 :(得分:13)

-X添加到您的命令中以启用Maven的调试日志记录。

如果它被卡在

之类的东西上
[DEBUG] Searching for remote catalog: http://repo.maven.apache.org/maven2/archetype-catalog.xml

您可能遇到连接问题。由于它之前一直在为您工作,您显然不需要配置代理。相反 - 因为您正在使用Windows - 我的猜测是,您的病毒扫描程序/个人防火墙正在阻止或者更确切地说是扫描&#34;连接,导致响应缓慢。尝试暂时禁用病毒扫描程序/个人防火墙,看看是否有帮助。

答案 1 :(得分:5)

您只需使用本地archetype-catalog.xml文件而不是远程文件。

选项-DarchetypeCatalog=internal可以做得很好。

因此,您现在可以立即生成项目:

mvn -B archetype:generate -DarchetypeCatalog=internal -DgroupId=com.mycompany.app -DartifactId=my-app

答案 2 :(得分:1)

如果你让它卡住了足够长的时间,你就会出现这样的错误:

[WARNING] Error reading archetype catalog http://repo.maven.apache.org/maven2 org.apache.maven.wagon.TransferFailedException: Connect to repo.maven.apache.org:80 [repo.maven.apache.org/23.235.43.215] failed: Connection timed out: connect

您必须设置maven proxy

我尝试了与您相同的命令,它确实生成了项目(在交互式和非交互式模式下),因此您必须尝试访问阻止项目生成的maven仓库。

答案 3 :(得分:1)

由于maven试图在https://artifactory.corp.chartercom.com/libs-release/archetype-catalog.xml上查找archetypeArtifactId,而该文件的数据大小超过6.7 MB。它停留在这里……

Searching for remote catalog: https://artifactory.corp.chartercom.com/libs-release/archetype-catalog.xml

解决方案:-

  1. https://artifactory.corp.chartercom.com/libs-release/archetype-catalog.xml
  2. 下载archetype-catalog.xml
  3. 将其保留在~/.m2/archetype-catalog.xml
  4. 使用-DarchetypeCatalog=internal选项再次运行mvn命令

答案 4 :(得分:0)

我遇到了同样的问题。 但就我而言,我只想用maven命令创建一个java项目。

那些面临同样问题且他们唯一目标的人只是创建一个项目然后去命令而不用-DinteractiveMode = false选项

首先我尝试了这个命令:

mvn archetype:generate -DgroupId=com.manan.firstexample -DartifactId=firstexample -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false -X

此时命令卡住并出现以下错误:

[INFO] Generating project in Batch mode
[DEBUG] Searching for remote catalog: http://repo.maven.apache.org/maven2/archetype-catalog.xml 

然后我尝试了没有DinteractiveMode选项的命令:

mvn archetype:generate -DgroupId=com.manan.firstexample -DartifactId=firstexample -DarchetypeArtifactId=maven-archetype-quickstart -X

所以,我收到了这个错误

Caused by java.net.ConnectionException: Connection Timed out: connect

但别担心。 它创建了一个项目。 (这解决了我的问题)