maven不再使用新内核了

时间:2010-02-23 09:58:38

标签: linux networking maven-2 linux-kernel

我对发生的事情感到有点失望。我不是maven专家(即我只是按照我的说法键入mvn clean install)但是当我在我的debian机器上安装了一个新内核时,maven似乎再也无法工作了:

在旧内核(2.6.26-1-amd64)上,它可以很好地下载所有依赖项。

在新内核(2.6.32-trunk-amd64)上,无法通过“网络无法访问”消息下载依赖项:

[INFO] Scanning for projects...
Downloading: http://repo1.maven.org/maven2/org/objectweb/fractal/parent/2.0/parent-2.0.pom
[WARNING] Unable to get resource 'org.objectweb.fractal:parent:pom:2.0' from repository central (http://repo1.maven.org/maven2): Error transferring file: Network is unreachable
[INFO] ------------------------------------------------------------------------
[ERROR] FATAL ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Error building POM (may not be this project's POM).


Project ID: null:cecilia:pom:2.2-SNAPSHOT

Reason: Cannot find parent: org.objectweb.fractal:parent for project: null:cecilia:pom:2.2-SNAPSHOT for project null:cecilia:pom:2.2-SNAPSHOT

当然,网络似乎完全可以访问,因为这是我遇到的网络问题。

mvn --version
2.2.1

任何帮助都会很棒! THX

2 个答案:

答案 0 :(得分:7)

这听起来像bug #563946(实际上是由JVM错误引起的)。建议的解决方法是在运行maven(和其他Java程序)时设置以下系统属性:

-Djava.net.preferIPv4Stack=true

如果这样可行,那么您可以在MAVEN_OPTS环境变量中设置它(例如在“~/.mavenrc”中):

MAVEN_OPTS="-Djava.net.preferIPv4Stack=true"

答案 1 :(得分:3)

事实上我的一个朋友发现了它的来源,这是一个java bug:

http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=560056

如此简单地编辑/etc/sysctl.d/bindv6only.conf

#net.ipv6.bindv6only = 1
# Set to 0 due to java but (#560056)
net.ipv6.bindv6only = 0

应该做的伎俩!