2015-03-02 79 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