2015-03-02 78 views
0

我有一个maven 3.2.5 docker镜像和一个从maven镜像构建​​的jenkins镜像。Docker maven和jenkins,mvn安装失败,请求junit:junit:jar:3.x

Maven的图像Dockerfile:

from dockerfile/java:oracle-java7 


ENV MAVEN_VERSION 3.2.5 
RUN curl -sSL http://mirror.bit.edu.cn/apache/maven/maven-3/$MAVEN_VERSION/binaries/apache-maven-$MAVEN_VERSION-bin.tar.gz | tar xzf - -C /usr/share \ 
&& mv /usr/share/apache-maven-$MAVEN_VERSION /usr/share/maven \ 
&& ln -s /usr/share/maven/bin/mvn /usr/bin/mvn 
#ADD settings.xml /usr/share/maven/conf/ 
ENV MAVEN_HOME /usr/share/maven 
CMD ["mvn"] 

詹金斯Dockerfile:

from javcly/fongwell:maven 
RUN mkdir -p /data/jenkins && mkdir -p /var/lib/jenkins 
RUN touch /data/jenkins/jenkins.log 


ADD jenkins.war /var/lib/jenkins/ 
VOLUME /data/jenkins 
ENV JENKINS_HOME /data/jenkins 

EXPOSE 8080 

CMD ["java","-jar","/var/lib/jenkins/jenkins.war","--webroot=/data/jenkins","--logfile=/data/jenkins/jenkins.log"] 

然后我用命令启动詹金斯图像:

docker run -d -v /data/docker/jenkins:/data/jenkins -v /usr/share/maven-repo:/root/.m2/repository --name jenkins -p 27099:8080 --add-host git.mydomain.com:192.168.0.119 docker:jenkins 

如上,/root/.m2/repository在容器上的安装到主机上的/ usr/share/maven-repo

现在我建立了我的项目在詹金斯从Git的下拉源代码,运行

mvn clean install -X 

它给了我这个错误

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-install-plugin:2.4:install (default-install) on project infrastrucure: Execution default-install of goal org.apache.maven.plugins:maven-install-plugin:2.4:install failed: Plugin org.apache.maven.plugins:maven-install-plugin:2.4 or one of its dependencies could not be resolved: Could not find artifact junit:junit:jar:3.x in central (https://repo.maven.apache.org/maven2) -> [Help 1] 
org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-install-plugin:2.4:install (default-install) on project infrastrucure: Execution default-install of goal org.apache.maven.plugins:maven-install-plugin:2.4:install failed: Plugin org.apache.maven.plugins:maven-install-plugin:2.4 or one of its dependencies could not be resolved: Could not find artifact junit:junit:jar:3.x in central (https://repo.maven.apache.org/maven2) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:224) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:116) 
    at org.apache.maven.lifecycle.internal.LifecycleModuleBuilder.buildProject(LifecycleModuleBuilder.java:80) 
    at org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder.build(SingleThreadedBuilder.java:51) 
    at org.apache.maven.lifecycle.internal.LifecycleStarter.execute(LifecycleStarter.java:120) 
    at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:355) 
    at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:155) 
    at org.apache.maven.cli.MavenCli.execute(MavenCli.java:584) 
    at org.apache.maven.cli.MavenCli.doMain(MavenCli.java:216) 
    at org.apache.maven.cli.MavenCli.main(MavenCli.java:160) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launchEnhanced(Launcher.java:289) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.launch(Launcher.java:229) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.mainWithExitCode(Launcher.java:415) 
    at org.codehaus.plexus.classworlds.launcher.Launcher.main(Launcher.java:356) 
Caused by: org.apache.maven.plugin.PluginExecutionException: Execution default-install of goal org.apache.maven.plugins:maven-install-plugin:2.4:install failed: Plugin org.apache.maven.plugins:maven-install-plugin:2.4 or one of its dependencies could not be resolved: Could not find artifact junit:junit:jar:3.x in central (https://repo.maven.apache.org/maven2) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:104) 
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:208) 
    ... 19 more 
Caused by: org.apache.maven.plugin.PluginResolutionException: Plugin org.apache.maven.plugins:maven-install-plugin:2.4 or one of its dependencies could not be resolved: Could not find artifact junit:junit:jar:3.x in central (https://repo.maven.apache.org/maven2) 
    at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:208) 
    at org.apache.maven.plugin.internal.DefaultMavenPluginManager.createPluginRealm(DefaultMavenPluginManager.java:361) 
    at org.apache.maven.plugin.internal.DefaultMavenPluginManager.setupPluginRealm(DefaultMavenPluginManager.java:329) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.getPluginRealm(DefaultBuildPluginManager.java:229) 
    at org.apache.maven.plugin.DefaultBuildPluginManager.executeMojo(DefaultBuildPluginManager.java:100) 
    ... 20 more 
Caused by: org.eclipse.aether.resolution.ArtifactResolutionException: Could not find artifact junit:junit:jar:3.x in central (https://repo.maven.apache.org/maven2) 
    at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolve(DefaultArtifactResolver.java:444) 
    at org.eclipse.aether.internal.impl.DefaultArtifactResolver.resolveArtifacts(DefaultArtifactResolver.java:246) 
    at org.eclipse.aether.internal.impl.DefaultRepositorySystem.resolveDependencies(DefaultRepositorySystem.java:367) 
    at org.apache.maven.plugin.internal.DefaultPluginDependenciesResolver.resolve(DefaultPluginDependenciesResolver.java:200) 
    ... 24 more 
Caused by: org.eclipse.aether.transfer.ArtifactNotFoundException: Could not find artifact junit:junit:jar:3.x in central (https://repo.maven.apache.org/maven2) 
    at org.eclipse.aether.connector.basic.ArtifactTransportListener.transferFailed(ArtifactTransportListener.java:39) 
    at org.eclipse.aether.connector.basic.BasicRepositoryConnector$TaskRunner.run(BasicRepositoryConnector.java:355) 
    at org.eclipse.aether.util.concurrency.RunnableErrorForwarder$1.run(RunnableErrorForwarder.java:67) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:745) 

如果我直接建立在主机上的同一个项目,它是成功的!

运行mvn dependency:tree -Dverbose -Dincludes=junit给了我同样的错误:

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-dependency-plugin:2.8:tree (default-cli) on project infrastrucure: Execution default-cli of goal org.apache.maven.plugins:maven-dependency-plugin:2.8:tree failed: Plugin org.apache.maven.plugins:maven-dependency-plugin:2.8 or one of its dependencies could not be resolved: Could not find artifact junit:junit:jar:3.x in nexus-osc (http://maven.oschina.net/content/groups/public/) -> [Help 1] 
[ERROR] 

这里有什么问题?

+0

你可以分享你的pom.xml文件好吗? – Mureinik 2015-03-02 06:24:54

+0

添加了pom.xml。欢呼声 – Kevin 2015-03-02 06:33:40

回答

0

3.x不是这样的版本,所以没有什么可以找到的。您需要将x替换为具体的数字。

在这里看到的版本列表:http://mvnrepository.com/artifact/junit/junit

的为您的POM例子是:

<dependency> 
    <groupId>junit</groupId> 
    <artifactId>junit</artifactId> 
    <version>3.7</version> 
</dependency> 
+0

添加了pom.xml。我不认为我有junit:junit:3.x在pom或者依赖库中有它。 – Kevin 2015-03-02 06:33:26

+0

你可以使用'mvn dependency:tree -Dverbose -Dincludes = junit' – acanby 2015-03-02 06:40:06

+0

找出在Junit依赖关系中拉什么东西给了我同样的错误 – Kevin 2015-03-02 07:23:38