zoukankan      html  css  js  c++  java
  • 仓库

    1、仓库
    maven编译时会按照配置中的构件坐标把依赖加到CLASSPATH
    2、构件坐标与仓库路径,仓库根目录
      groupid/artifactid/version/arifactid-version.packaging|extension--classfier
    3、仓库分类
      构建开始时,会先在本地仓库查找,不存在就去远程仓库下载到规则路径下,然后再加入类路径
      即使本地仓库已经存在,会根据配置检查更新。
      快照更新策略:会比较本地构建目录下元数据文件和远程仓库目录下元数据文件,来决定是否下载更新
      release/latest(快照)
      ---本地仓库
      ---远程仓库/私有仓库
        ---中央仓库
        ---公共仓库 http://download.java.net/maven/2
                   http://repository.jboss.com/maven2/
        ---私有仓库
    4、仓库路径设置
       M2_HOME/conf/settings.xml--全局配置
       ~/.M2/settings.xml---个人私有设置
       --<settings>
          <localRepository>D:/xxxx</localRepository>
       </settings>
    5、构件入库的方法
       ---mvn clean install -Dmaven.test.skip=true
       ---从远程仓库加载安装
    6、仓库超级POM在maven-module-builder.jar文件,所有maven项目会继承这个超级POM
       <repositories>
           <repository>
             <id>central</id>
             <name>maven switchboard</name>
             <url>http://repo1.maven.org/maven2</url>
             <layout>default</layout>
             <snapshots>
               <enabled>false</enabled>
             </snapshots>
          </respository>
          <repository>
            <id>central</id>
            <name>maven switchboard</name>
            <url>http://repository.jboss.com/maven2/</url>
            <layout>default</layout>
            <releases>
              <enabled>true</enabled>
              <updatePolicy>daily/never/always/5(分钟)</updatePolicy>
              <checksumPolicy>ignore</checksumPolicy>
            </releases>
            <snapshots>
              <enabled>false</enabled>
            </snapshots>
         </respository>
       </repositories>
       7、远程仓库的认证
       <settings>
         <servers>
            <server>
              <id>central</id>---注意ID需要与repositories中定义的id匹配
              <username>xx</username>
              <password>xx</password>
            </server>
         </servers>
       </settings>
       8、发布到远程仓库--认证同上锁 mvn clean deploy
       <distributionManagement>
          <repository>
            <id></id>
            <name></name>
            <url>xxx</url>
          </repository>
       </distributionManagement>
       9、SNAPSHOT版本妙用--SNAPSHOT意味着不稳定
         每次构建时,maven会根据仓库<repository>定义的策略,去服务器检查是否存在新的版本,
         通过比较本地元数据文件和远程元数据文件的时间戳,如果有就下载更新。
         SNAPSHOT版本在deploy时,maven会给版本打时间戳。
       10、当依赖版本是release/latest/SNAPSHOT时,都会检查更新
           release会检查最新的发布,会检查最新的快照或发布,SNAPSHOT最新的快照
       11、插件的远程仓库
         <pluginRepositories>
             <pluginRepository>
               <id>central</id>
               <name>maven switchboard</name>
               <url>http://repo1.maven.org/maven2</url>
               <layout>default</layout>
               <snapshots>
                 <enabled>false</enabled>
               </snapshots>
            </pluginRepository>
          <pluginRepositories>

  • 相关阅读:
    c#基于事件模型的UDP通讯框架(适用于网络包编解码)
    菜鸟的mongoDB学习---(五)MongoDB的limit、skip、sort方法
    Session管理之ThreadLocal
    java中a++和++a在较复杂的运算中分析
    Spring2.5学习4.2_Proxy实现动态代理(目标类实现随意接口)
    申请美国签证超具体流程
    Class 与 new的配合使用
    关注PHPthinking官网微信公众号——红包来袭
    oracle-sql优化器
    POJ 2184 Cow Exhibition
  • 原文地址:https://www.cnblogs.com/justart/p/11519679.html
Copyright © 2011-2022 走看看