Maven私服搭建及使用-Windows版

瞭解有限,目前只針對基礎功能介紹,持續更新maven

1、下載對應的版本(本例版本:nexus-3.7.1-02)

  https://www.sonatype.com/download-oss-sonatypeurl

2、啓動服務,進入對應安裝目錄,按住shift右鍵,打開cmd命令行,執行nexus.exe /run

  個人Nexus目錄:NEXUS_HOME\nexus-3.7.1-02-win64\nexus-3.7.1-02\binspa

  最後啓動成功提示以下,便可訪問http://192.168.1.168:8081/登陸,賬號admin 密碼admin123命令行

 

3、頁面介紹

1.倉庫頁面

點擊導航Browse,這裏是全部已經配置的倉庫3d

Name:代理

maven-central:maven中央庫,默認從https://repo1.maven.org/maven2/拉取JAR包,這個遠端地址可改,也可新建另一個調試

maven-releases:私庫發行版JARcode

maven-snapshots:私庫調試版本JARserver

maven-public:倉庫分組,把上面三個倉庫組合在一塊兒對外提供服務xml

Type:

proxy:代理遠端倉庫

hosted:本地Jar包

group:倉庫組

 

2.搜索功能

便於快速查找jar包,導航中選擇Search,可選擇多種類型的查找方式,好比按名稱、按版本、按倉庫組等,此功能是模糊查找

3.建立修改倉庫&倉庫組

點擊上方齒輪圖標,便可打開配置管理頁面,其中Repository欄爲倉庫管理,下面只針對這裏的Blob Stores、Repositories說明

Blob Stores:jar包存放路徑,默認存放在NEXUS_HOME/sonatype-work\nexus3\blobs\default下,可建立多個

Repositories:

  建立代理倉庫Proxy

    ①選擇Create repository建立倉庫

    ②選擇倉庫類型maven2(proxy)

      

 

    ③設置倉庫名稱

       

    ④設置倉庫版本,代理倉庫一般設置爲releases

      

    ⑤配置下載存放路徑,默認是Blob Storesdefault

    ⑥配置代理倉庫地址,我是用阿里的

      

    以上完成後保存建立便可完成代理倉庫的建立

   建立本地倉庫(第三方、代理倉庫中沒有的jar都放這裏)hosted,重複上面的流程,不一樣處以下

    ②選擇倉庫類型maven2(hosted)

    ④設置倉庫版本,releases或snapshots,二者區別以下:

       有一個本身封裝的jar包,該jar包處於開發版,近期會不停的更新,版本爲1.0,使用snapshots倉庫,從此jar包更新後,只需將新的包傳入到該倉庫,

       項目中會自動下載更新到這個包,無需修改版本號;用releases這個倉庫,每次變動jar包必須升級版本號,對應項目pom文件中要修改,不然新的jar包不會被下載

    ⑥此步改成,目的是能夠上傳部署jar

      

  建立倉庫組group,重複上面的流程,不一樣處以下

    ②選擇倉庫類型maven2(group)

      ④設置將哪些倉庫歸類到一個組裏

      

  到如今爲止,Nexus倉庫部分操做完成

 4、使用倉庫

1.配置Maven settings.xml  

  配置中URL自行修改

 <mirrors>
    <mirror>
      <id>content</id>
      <mirrorOf>*</mirrorOf>
      <name>maven-public</name>
      <url>http://192.168.1.168:8081/repository/maven-public/</url>
    </mirror>
  </mirrors>
<servers>
    <server>
      <id>nexus</id> <!--這個id用於上傳jar包-->
      <username>admin</username>
      <password>admin123</password>
    </server>
  </servers>

2.在項目pom.xml中配置以下,目的:snapshots模式時,更新策略設置,非snapshots模式不用配置

  <distributionManagement>
        <snapshotRepository>
            <id>nexus</id>
            <url>http://192.168.1.168:8081/repository/maven-public/</url>
        </snapshotRepository>
        <repository>
            <id>nexus</id>
            <url>http://192.168.1.168:8081/repository/maven-public/</url>
        </repository>
    </distributionManagement>
  
<repositories>
 <repository>
            <id>maven-public</id>
            <url>http://192.168.1.168:8081/repository/maven-public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
                <updatePolicy>daily</updatePolicy>
                <!--該元素指定更新發生的頻率。Maven會比較本地POM和遠程POM的時間戳。這裏的選項是:always(一直),daily(默認,每日),interval:X(這裏X是以分鐘爲單位的時間間隔),或者never(從不)。 -->
            </snapshots>
        </repository>
</repositories>

3.項目中pom引用jar

  引用快照版,他會去私服中倉庫類型爲SNAPSHOT裏去找jar,注意版本後面必定要加-SNAPSHOT,發佈版直接寫<version>1.27</version>;

  發佈快照版jar後,需本地執行Maven test或者Maven install等操做纔會更新jar

<dependency>
  <groupId>org2.kaola</groupId>
  <artifactId>fastdfs</artifactId>
  <version>1.27-SNAPSHOT</version>
</dependency>

5、Jar包發佈

使用方式:直接cmd中輸入以下命令

1.發佈releases版

mvn deploy:deploy-file -DgroupId=org.kaola -DartifactId=fastdfs -Dversion=1.25 -Dpackaging=jar -Dfile=D:\fastdfs.jar -Durl=http://192.168.1.168:8081/repository/maven-releases/ -DrepositoryId=nexus

2.發佈snapshots版

mvn deploy:deploy-file -DgroupId=org2.kaola -DartifactId=fastdfs -Dversion=1.27-SNAPSHOT -Dpackaging=jar -Dfile=D:\fastdfs-SNAPSHOT.jar -Durl=http://192.168.1.168:8081/repository/maven-snapshots/ -DrepositoryId=nexus

須要自定義內容:

DgroupId:包分組,例如org.kaola,pom文件中<groupId>org.kaola</groupId>配置

DartifactId:文件名,pom文件中<artifactId>fastdfs</artifactId>配置

Dversion:版本,pom文件中<version>1.27-SNAPSHOT</version>配置

Dfile:上傳文件本地路徑

Durl:倉庫路徑,上傳到哪一個倉庫

DrepositoryId:上面步驟4-1中配置的id

相關文章
相關標籤/搜索