nexus 3.x私服搭建及使用-windows版本


一、前置環境准備

1.java環境准備

jdk1.8(下載地址:https://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html)

具體配置參考我另一篇博客:https://www.cnblogs.com/yilichentu/p/12699472.html

2.maven環境准備

apache-maven-3.6(下載地址:http://maven.apache.org/download.cgi)

配置環境變量MAVEN_HOME

 

 配置Path,把%MAVEN_HOME%\bin追加進去,注意需要英文分號隔開

 

二、Nexus 安裝

1.下載Nexus

我這里下載的是OSS版的,可以免費使用,地址:https://sonatype-download.global.ssl.fastly.net/repository/downloads-prod-group/3/nexus-3.30.1-01-win64.zip

下載下來之后解壓,得到兩個文件夾

 

 

 2.配置

進入nexus-3.30.1-01/bin目錄找到nexus.vmoptions文件

 

 

 

 

 

 這幾個配置根據自己機器來設置

再進入到D:\soft\nexus-3.30.1-windows\nexus-3.30.1-01\etc(nexus-3.30.1-01\etc目錄,具體看你自己安裝在哪里)

打開nexus-default.properties文件,配置端口號和ip地址

 

 

 

 

 

 到這里啟動的相關配置都配好了,下面是啟動服務

3.啟動服務

cmd命令進入到nexus-3.30.1-01\bin

然后輸入:nexus.exe /install

再輸入:nexus.exe /start

查看日志文件輸出了這一行,就是啟動完成了

 

 

 日志文件在sonatype-work\nexus3\log下面,主要看nexus.log

到這里nexus服務就啟動好了

三、nexus倉庫配置

1.登錄

打開瀏覽器輸入127.0.0.1:8081(看你上面配置的ip端口號)

然后頁面右上角有個sign in

 

 

 初始賬號是:admin

 初始密碼在:sonatype-work\nexus3\admin.password中(具體看頁面上有提示)

2.中央倉庫配置阿里雲鏡像

 

 

 

 

 

 阿里雲中央倉庫:http://maven.aliyun.com/nexus/content/repositories/central/

3.配置releases和snapshots為每次deploy覆蓋上一個版本

 

 

 至此nexus都配置好了

四、使用剛搭建的私服

直接上配置,修改settings.xml文件,文件在apache-maven-3.8.1\conf下面(看你自己的maven安裝在哪里)

<?xml version="1.0" encoding="UTF-8"?>
<!-- for full reference, see also http://maven.apache.org/ref/3.2.3/maven-settings/settings.html -->
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">

  <!--自定義本地倉庫路徑-->
  <localRepository>D:\soft\repository</localRepository>

  <!-- 配置Maven服務器的賬號信息,自動化部署的時候需要用到 -->
  <servers>
    <server>
      <id>maven-central</id>
      <!-- 使用公共的developer/password賬號進行日常的發布管理 -->
      <username>你的用戶名</username>
      <password>你的密碼</password>
    </server>
    <server>
      <id>maven-public</id>
      <!-- 使用公共的developer/password賬號進行日常的發布管理 -->
      <username>你的用戶名</username>
      <password>你的密碼</password>
    </server>
    <server>
      <id>maven-releases</id>
      <!-- 使用公共的developer/password賬號進行日常的發布管理 -->
      <username>你的用戶名</username>
      <password>你的密碼</password>
    </server>
    <server>
      <id>maven-snapshots</id>
      <!-- 使用公共的developer/password賬號進行日常的發布管理 -->
      <username>你的用戶名</username>
      <password>你的密碼</password>
    </server>
  </servers>

  <!-- 使用Mirror配置節可以強制所有包請求都會被轉向內網Nexus服務器的地址 -->
  <mirrors>
    <mirror>
      <id>maven-central</id>
      <mirrorOf>*,!aliyun,!spring-cloud</mirrorOf>
      <url>http://ip:port/repository/maven-public/</url>
    </mirror>
    <mirror>
        <id>alimaven-central</id>
        <mirrorOf>central</mirrorOf>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
    </mirror>
    <mirror>
        <id>jboss-public</id>
        <mirrorOf>central</mirrorOf>
        <name>JBoss Public Repository Group</name>
        <url>http://repository.jboss.org/nexus/content/groups/public</url>
    </mirror>
  </mirrors>

  <!-- 這個默認配置決定了我們的Maven服務器開啟snapshot配置,否則不能下載SNAPSHOTS的相關資源 --> 
 <profiles>
        <profile>
            <id>jdk18</id>
            <activation>
                <jdk>1.8</jdk>
                <activeByDefault>true</activeByDefault>
            </activation>
            <properties>
                <maven.compiler.source>1.8</maven.compiler.source>
                <maven.compiler.target>1.8</maven.compiler.target>
                <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
            </properties>
        </profile>
        <profile>
            <id>maven-central</id>
            <repositories>
                <repository>
                    <id>maven-central</id>
                    <name>maven-central</name>
                    <url>http://ip:port/repository/maven-public/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                        <updatePolicy>always</updatePolicy>
                        <checksumPolicy>warn</checksumPolicy>
                    </snapshots>
                </repository>
                <repository>
                    <id>aliyun</id>
                    <name>aliyun</name>
                    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
                </repository>    
                <repository>
                    <id>jboss</id>
                    <name>jboss</name>
                    <url>http://repository.jboss.com/maven2/</url>
                </repository>
                <repository>
                    <id>spring-cloud</id>
                    <url>http://maven.wso2.org/nexus/content/repositories/wso2-public/</url>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <id>maven-central</id>
                    <name>maven-central</name>
                    <url>http://ip:port/repository/maven-public/</url>
                    <snapshots>true</snapshots>
                    <releases>true</releases>
                </pluginRepository>
                <pluginRepository>
                    <id>repo2</id>
                    <name>repo2</name>
                    <url>http://repo2.maven.org/maven2/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </pluginRepository>
            </pluginRepositories>
        </profile>
    </profiles>
    <activeProfiles>
        <activeProfile>maven-central</activeProfile>
    </activeProfiles>
</settings>

項目中pom.xml添加配置

<distributionManagement>
        <repository>
            <id>maven-releases</id> <!-- 要跟setting文件中配置的releases的id保持一致-->
            <name>maven-releases</name>
            <url>http://ip:port/repository/maven-releases/</url>
        </repository>

        <snapshotRepository>
            <id>maven-snapshots</id> <!-- 要跟setting文件中配置的snapshots的id保持一致-->
            <name>maven-snapshots</name>
            <url>http://ip:port/repository/maven-snapshots/</url>
        </snapshotRepository>
</distributionManagement>

至此nexus私服的基本搭建及使用就完成了,感覺有幫助的話可以點贊收藏關注哦!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM