如何通过Maven构建项目时解决一些依赖关系?

时间:2012-06-08 12:04:05

标签: java maven

我有一些Java项目,我正在尝试使用Windows中的Maven构建它。但我在做这件事时遇到了一些错误。我已将命令用作

"mvn -Dmaven.test.skip=true install" 

详情如下:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] OpenEMPI Application .............................. SUCCESS [1.610s]
[INFO] OpenEMPI - Core ................................... SUCCESS [1:39.281s]
[INFO] OpenEMPI - OpenPIXPDQ Adapter ..................... FAILURE [48.469s]
[INFO] OpenEMPI - EJB Interface .......................... SKIPPED
[INFO] OpenEMPI - Web (Struts 2) ......................... SKIPPED
[INFO] OpenEMPI - Web (Server Side) ...................... SKIPPED
[INFO] OpenEMPI - Web (Client Side) ...................... SKIPPED
[INFO] OpenEMPI - EAR .................................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2:31.203s
[INFO] Finished at: Fri Jun 08 04:30:04 CDT 2012
[INFO] Final Memory: 11M/60M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project openempi-openpixpdq-adapter: Could not
 resolve dependencies for project org.openhie.openempi:openempi-openpixpdq-adapt
er:jar:2.0.5: Failed to collect dependencies for [javax.ejb:ejb-api:jar:3.0 (pro
vided), org.openhie.openempi:openempi-core:jar:2.0.5 (compile), org.openhealthex
change.openpixpdq:openpixpdq:jar:1.1 (compile), com.misys.braid:braid-base:jar:1
.2.2 (compile), com.misys.hieportal.sysmon:eventmonitoring:jar:1.0 (compile), ca
.uhn.hapi:hapi:jar:0.5.1 (compile), commons-dbcp:commons-dbcp:jar:1.2.1 (compile
), commons-beanutils:commons-beanutils:jar:1.8.0 (compile), commons-collections:
commons-collections:jar:3.2 (compile), commons-lang:commons-lang:jar:2.3 (compil
e), javax.mail:mail:jar:1.4 (compile), javax.persistence:persistence-api:jar:1.0
 (compile), net.sf.ehcache:ehcache:jar:1.4.1 (compile), org.aspectj:aspectjweave
r:jar:1.6.0 (compile), org.aspectj:aspectjrt:jar:1.6.0 (compile), org.codehaus.x
fire:xfire-java5:jar:1.2.6 (compile), org.codehaus.xfire:xfire-spring:jar:1.2.6
(compile), org.hibernate:hibernate:jar:3.2.6.ga (compile), org.hibernate:hiberna
te-annotations:jar:3.3.0.ga (compile), org.hibernate:hibernate-commons-annotatio
ns:jar:3.3.0.ga (compile), org.jmock:jmock:jar:2.4.0 (compile?), org.jmock:jmock
-junit4:jar:2.4.0 (compile?), org.springframework:spring-jdbc:jar:2.5.4 (compile
), org.springframework:spring-orm:jar:2.5.4 (compile), org.springframework:sprin
g-aop:jar:2.5.4 (compile), org.springframework:spring-aspects:jar:2.5.4 (compile
), org.springframework:spring-context-support:jar:2.5.4 (compile), org.jboss.cli
ent:jbossall-client:jar:4.2.3.GA (test), org.jboss:jnp-client:jar:4.2.2.GA (test
), org.subethamail:subethasmtp-wiser:jar:1.2 (test), velocity:velocity:jar:1.4 (
compile), postgresql:postgresql:jar:8.1-407.jdbc3 (compile), junit:junit:jar:4.4
 (compile?), log4j:log4j:jar:1.2.15 (compile), org.springframework:spring-test:j
ar:2.5.4 (compile?), org.springframework.security:spring-security-core-tiger:jar
:2.0.1 (compile), javax.annotation:jsr250-api:jar:1.0 (compile)]: Failed to read
 artifact descriptor for org.openhealthexchange.openpixpdq:openpixpdq:jar:1.1: C
ould not transfer artifact org.openhealthexchange.openpixpdq:openpixpdq:pom:1.1
from/to central (http://repo1.maven.org/maven2): Connection to http://repo1.mave
n.org refused: Connection timed out: connect -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyReso
lutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command

[ERROR]   mvn <goals> -rf :openempi-openpixpdq-adapter

如果我遇到某些问题,我想问一下如何解决依赖关系问题。 我对maven知之甚少,因此遇到了这些问题

请建议。

由于

3 个答案:

答案 0 :(得分:5)

您遇到此问题是因为您的本地计算机无法连接到此位置的主maven存储库:http://repo1.maven.org/maven2。您可能需要配置maven代理设置http://maven.apache.org/guides/mini/guide-proxies.html

答案 1 :(得分:2)

此外,不要从Central下载工件,而是尝试设置自己的“企业存储库”。

  • 这将减轻此服务器的负担
  • 这将减轻您的企业互联网带宽(我的非常非常有限;)
  • 你将设法在你身上伪装自己的神器。

这只需要......好吧,服务器(物理或虚拟)和tomcat。 你应该阅读这本免费书:http://www.sonatype.com/books/mvnref-book/reference/

主要产品有:

这不是很难,虽然当你认为你只需要安装maven,制作你的pom并继续下去时它似乎很烦人。)

答案 2 :(得分:0)

xxx xxx .... from / to central(http://repo1.maven.org/maven2):与http://repo1.mave的连接 n.org拒绝:连接超时:连接 - &gt;

似乎当maven尝试从其存储库下载依赖项时,它无法建立连接。几个选项..

  1. 确保您的互联网连接可用
  2. 不使用-o开关运行安装
  3. 配置maven代理设置(    http://maven.apache.org/guides/mini/guide-proxies.html
  4. 有时某些依赖项需要从特定的存储库下载(例如 - 来自jboss存储库的jboss依赖项),因此可能需要将特定的存储库添加到pom中