2017-08-17 25 views
0

我观察,每当我执行下面的命令: -防止行家下载Maven的元数据和插件文物每次

mvn -f pom.xml -Dmaven.repo.local=$MAVEN_REPO -Drat.skip=true -DnoTest=true surefire-report:report 

Maven是下载每次maven-metadata &插件文物。

Downloading: http://maven.twttr.com/com/neveda/kekin-storage-metrics/0.001-SNAPSHOT/maven-metadata.xml 

... 

Downloading: http://artifactory.kekin.local:XXXX/libs-release/org/ 

我已经通过this答案&了我settings.xml看起来象下面这样: -

<?xml version="1.0" encoding="UTF-8"?> 
<settings xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.1.0 http://maven.apache.org/xsd/settings-1.1.0.xsd" xmlns="http://maven.apache.org/SETTINGS/1.1.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> 
<profiles> 
    <profile> 
    <repositories> 
     <repository> 
     <snapshots> 
      <enabled>false</enabled> 
      <updatePolicy>never</updatePolicy> 
     </snapshots> 
     <id>central</id> 
     <name>libs-release</name> 
     <url>http://artifactory.kekin.local:XXXX/libs-release</url> 
     </repository> 
     <repository> 
     <snapshots> 
      <updatePolicy>never</updatePolicy> 
     </snapshots> 
     <id>snapshots</id> 
     <name>libs-snapshot</name> 
     <url>http://artifactory.kekin.local:XXXX/libs-snapshot</url> 
     </repository> 
    </repositories> 
    <pluginRepositories> 
     <pluginRepository> 
     <snapshots> 
      <enabled>false</enabled> 
      <updatePolicy>never</updatePolicy> 
     </snapshots> 
     <id>central</id> 
     <name>plugins-release</name> 
     <url>http://artifactory.kekin.local:XXXX/plugins-release</url> 
     </pluginRepository> 
     <pluginRepository> 
    <snapshots> 
     <updatePolicy>never</updatePolicy> 
    </snapshots> 
     <id>snapshots</id> 
     <name>plugins-snapshot</name> 
     <url>http://artifactory.kekin.local:XXXX/plugins-snapshot</url> 
     </pluginRepository> 
    </pluginRepositories> 
    <id>artifactory</id> 
    </profile> 
</profiles> 
<activeProfiles> 
    <activeProfile>artifactory</activeProfile> 
</activeProfiles> 
</settings> 

环境: -

  • 的Maven - 3.5
  • OS - 10.12.6
+0

你有SNAPSHOT依赖关系吗?请显示你的完整文件。 – khmarbaise

+0

是的,我有SNAPSHOT依赖。这是一个多模块项目。你想要所有的poms? – tuk

+0

多模块项目之外是否有SNAPSHOT依赖关系?如果SNAPSHOT只能确定不应导致从存储库下载的模块间依赖关系,如果出现问题,则... – khmarbaise

回答

1

我不知道这是否会是你最好的选择,但你可以调用行家与--offline开关从做任何下载阻止它:

mvn --offline -f pom.xml -Dmaven.repo.local=$MAVEN_REPO -Drat.skip=true -DnoTest=true surefire-report:report 

这样做的副作用,虽然,你的构建如果缺失任何工件将会失败。

+0

我知道'-o',但我想要的东西,如果工件丢失或已被修改,然后只下载。 – tuk

+0

您在这里的另一个副作用是任何SNAPSHOT依赖关系都不会更新,如果您在意这一点,则脱机模式是全部或全部无关,并且没有任何关于 – mikeb