1. 程式人生 > >windows+nexus+maven環境搭建

windows+nexus+maven環境搭建

windows nexus環境搭建

1、下載nexus 版本為 nexus-2.11.4-01-bundle
下載地址 這裡寫連結內容
2、將下載好的檔案放到D盤進行解壓
3、解壓後目錄結構這裡寫圖片描述
nexus-2.11.4-01目錄包含了Nexus執行所需要的檔案。是Nexus執行必須的。

sonatype-work目錄包含Nexus生成的配置檔案、日誌檔案、倉庫檔案等。當我們需要備份Nexus的時候預設備份此目錄即可。

4、進行環境變數配置,將目錄配置到環境變數path中,下圖為我的檔案存放目錄。

這裡寫圖片描述

5、切換到該目錄執行安裝命令
(1)nexus install
這裡寫圖片描述

(2)啟動nexus
nexus start
這裡寫圖片描述

如果啟動失敗,如下圖。該提示資訊表示jdk配置不正確,如果nexus高於2.6版本則需要使用jdk1.7以上版本。並在wrapper.conf檔案中配置jdk路徑 wrapper.java.command=C:\Program Files\Java\jdk1.7.0_75\bin\java.exe

這裡寫圖片描述
錯誤資訊:
這裡寫圖片描述

錯誤原因
nexus無法啟動大概原因為:
1.nexus的wrapper.conf檔案中的:java配置錯誤導致啟動失敗(包括版本錯誤和路徑錯誤) 解決如上
2.nexus的8081埠被佔用
修改nexus的埠號——找到nexus-2.11.4-01\conf下的nexus.properties中的application-port修改自己想要的埠號即可
這裡寫圖片描述

二、nexus使用
1、Nexus常用功能就是:指定私服的中央地址、將自己的Maven專案指定到私服地址、從私服下載中央庫的專案索引、從私服倉庫下載依賴元件、將第三方專案jar上傳到私服供其他專案組使用。
2、倉庫管理
點選左邊導航欄的Repositories,介面的主面板會顯示所有一個所有倉庫及倉庫組的列表,你會看到它們的Type欄位的值有group,hosted,proxy,virtual。這裡我們不關心virtual,只介紹下另外三種類型:
hosted,本地代理倉庫,通常我們會部署自己的構件到這一型別的倉庫。
proxy,代理的遠端倉庫,它們被用來代理遠端的公共倉庫,如maven中央倉庫。
group,倉庫組,用來合併多個hosted/proxy倉庫,通常我們配置maven依賴倉庫組。
這裡寫圖片描述

上傳第三方jar
這裡寫圖片描述

這裡寫圖片描述
這裡寫圖片描述
3、maven中配置nexus
如果只是在一個專案使用可以在pom.xml檔案中配置。如果要多個專案同時使用則在maven的setting.xml檔案中進行配置。

要想使用這個私服倉庫,先在專案pom中配置相關私服資訊

指定倉庫和外掛倉庫

    <profile>
        <id>nexus</id>
        <repositories>
            <repository>
              <id>public</id>
              <url>http://127.0.0.1:8081/nexus/content/groups/public/</url>
              <releases><enabled>true</enabled></releases>
              <snapshots><enabled>false</enabled></snapshots>
            </repository>
            <repository>
              <id>public-snapshots</id>
              <url>http://127.0.0.1:8081/nexus/content/repositories/snapshots/</url>
              <releases><enabled>false</enabled></releases>
              <snapshots><enabled>true</enabled></snapshots>
            </repository>
      </repositories>
      <pluginRepositories>
          <pluginRepository>
            <id>public</id>
            <url>http://127.0.0.1:8081/nexus/content/groups/public/</url>
            <releases><enabled>true</enabled></releases>
            <snapshots><enabled>false</enabled></snapshots>
          </pluginRepository>
          <pluginRepository>
            <id>public-snapshots</id>
            <url>http://127.0.0.1:8081/nexus/content/repositories/snapshots/</url>
            <releases><enabled>false</enabled></releases>
            <snapshots><enabled>true</enabled></snapshots>
          </pluginRepository>
      </pluginRepositories>
      </profile>

配置mirror
Mirror是制定映象站點
id, name是該映象的唯一定義符。id用來區分不同的mirror元素。
url是該映象的URL。構建系統會優先考慮使用該URL,而非使用預設的伺服器URL。
mirrorOf是被映象的伺服器的id。例如,如果我們要設定了一個Maven中央倉庫(http://
repo1.maven.org/maven2)的映象,就需要將該元素設定成central。這必須和
中央倉庫的id central完全一致。

  <mirrors>
     <!--1021-->
        <mirror>
      <id>nexus-public</id>
      <mirrorOf>*</mirrorOf>
      <url>http://127.0.0.1:8081/nexus/content/groups/public/</url>
    </mirror>
        <mirror>
      <id>nexus-public-snapshots</id>
      <mirrorOf>Snapshots</mirrorOf>
        <url>http://127.0.0.1:8081/nexus/content/groups/public/</url>
    </mirror>
  </mirrors>

配置許可權 表示當需要連線到一個遠端伺服器的時候需要使用到的驗證方式

    <server>
      <id>repo</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
    <server>
      <id>Snapshots</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
  </servers>

配置activeProfiles

<activeProfiles>
   <activeProfile>nexus</activeProfile>
  </activeProfiles>