乐趣区

关于maven:Maven自动更新SNAPSHOT包

在开发和测试阶段,开发人员常常将开发的 jar 以 SNAPSHOT 快照版本形式 deploy 到私服,提供给其余的我的项目应用。Maven 默认以天为单位查看更新,对于咱们继续集成的频率来说,这显然是不够的。

如果要实时强制查看 SNAPSHOT 更新,能够以下形式:

  1. 用命令进行 maven 打包的时候,加上 -U 参数:

    mvn clean install -U -Dmaven.test.skip=true
  2. 批改 IDEA 配置,勾选“Always update snapshots”
  3. 批改 Maven 配置
    配置 setting.xml 中的 profile 为实时更新快照版本
<profiles>
    <profile>
      <repositories>
        <repository>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
          <id>central</id>
          <name>libs-release</name>
          <url>http://xxx.com:80/repository/maven-public</url>
        </repository>
        <repository>
            <!-- 实时查看并且更新快照版本的插件 -->
          <snapshots>
            <enabled>true</enabled>  
            <updatePolicy>always</updatePolicy>  
            <checksumPolicy>warn</checksumPolicy> 
          </snapshots>
          <id>snapshots</id>
          <name>libs-snapshot</name>
          <url>http://xxx.com:80/repository/maven-snapshot</url>
        </repository>
      </repositories>
      <pluginRepositories>
        <pluginRepository>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
          <id>central</id>
          <name>plugins-release</name>
          <url>http://xxx.com:80/repository/maven-public</url>
        </pluginRepository>
        <pluginRepository>
          <!-- 实时查看并且更新快照版本的插件 -->
          <snapshots>
            <enabled>true</enabled>  
            <updatePolicy>always</updatePolicy>  
            <checksumPolicy>warn</checksumPolicy> 
          </snapshots>
          <id>snapshots</id>
          <name>plugins-snapshot</name>
          <url>http://xxx.com:80/repository/maven-public</url>
        </pluginRepository>
      </pluginRepositories>
      <id>artifactory</id>
    </profile>
</profiles>
退出移动版