采用Nexus搭建Maven私服

采用Nexus搭建Maven私服

1.采用docker安装

复制代码
1.创建数据目录

挂载的目录:
/usr/local/springcloud_1113/nexus3/nexus-data


2.查询并拉取镜像

docker search nexus3

docker pull sonatype/nexus3


3.查看拉取的镜像

docker images

4.创建docker容器:可能出现启动后停止,可能的原因就是服务器的内存是不足的

docker run -id --privileged=true --name=nexus3 --restart=always -p 58081:8081 -v /usr/local/springcloud_1113/nexus3/nexus-data:/var/nexus-data sonatype/nexus3


5.查看日志

docker logs -f nexus3 

2.访问

复制代码
1.访问地址:http://192.168.101.131:58081/

2.查看默认的密码
docker exec -it 78fa7a779952 bash

bash-4.4$ more nexus-data/admin.password
6fe68b57-20b4-4242-b311-8df8210f1b2b


3.仓库分为发行版和快照版。根据的是版本的后缀进行判断的。不写的话就是默认的发行版。

3.设置阿里云代理

复制代码
https://maven.aliyun.com/repository/central
复制代码
https://maven.aliyun.com/repository/public

4.本地settings.xml设置

复制代码
    <localRepository>D:xxx\apache-maven-3.6.3\repository</localRepository>

    <mirrors>
        <!-- Maven私服配置 -->
        <mirror>
            <id>maven-public</id>
            <name>maven-public</name>
            <url>http://192.168.101.131:58081/repository/maven-public/</url>
            <mirrorOf>*</mirrorOf>
        </mirror>
        <!--阿里云maven库-->
        <mirror>
            <id>alimaven</id>
            <name>aliyun maven</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <mirrorOf>central</mirrorOf>
        </mirror>
		
    </mirrors>

需要和pom中的保持一致  
  <servers>
        <!-- Nexus私服发布的用户名密码 -->
        <server>
            <id>maven-public</id>
            <username>admin</username>
            <password>admin</password>
        </server>
        <server>
            <id>maven-releases</id>
            <username>admin</username>
            <password>admin</password>
        </server>
        <server>
            <id>maven-snapshots</id>
            <username>admin</username>
            <password>admin</password>
        </server>
    </servers>

 <profiles>
        <!-- 配置jdk版本 -->
        <profile>
            <id>jdk1.8</id>
            <activation>
                <activeByDefault>true</activeByDefault>
                <jdk>1.8</jdk>
            </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>
            <!-- Nexus私服配置 -->
            <repositories>
                <repository>
                    <id>maven-public</id>
                    <url>http://192.168.101.131:58081/repository/maven-public/</url>
                    <layout>default</layout>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
                <repository>
                    <id>maven-releases</id>
                    <url>http://192.168.101.131:58081/repository/maven-releases/</url>
                    <layout>default</layout>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>

        <!-- 阿里云配置: 提高国内的jar包下载速度 -->
        <profile>
            <id>ali</id>
            <repositories>
                <repository>
                    <id>alimaven</id>
                    <name>aliyun maven</name>
                    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
            <pluginRepositories>
                <pluginRepository>
                    <id>alimaven</id>
                    <name>aliyun maven</name>
                    <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
                </pluginRepository>
            </pluginRepositories>
        </profile>
    </profiles>

    <!-- 激活配置 -->
    <activeProfiles>
        <activeProfile>jdk1.8</activeProfile>
        <activeProfile>ali</activeProfile>
    </activeProfiles>

5.本地项目创建-并上传

pom中加入

复制代码
    <!--    配置私服仓库-->
    <distributionManagement>
        <!-- 发布版本仓库 -->
        <repository>
            <id>maven-releases</id>
            <name>Nexus Release Repository</name>
            <url>http://192.168.101.131:58081/repository/maven-releases/</url>
        </repository>
        <!-- 快照版本仓库 -->
        <snapshotRepository>
            <id>maven-snapshots</id>
            <name>Nexus Snapshot Repository</name>
            <url>http://192.168.101.131:58081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

编写一点测试代码。代码的打包方式需要时jar的方式。

上传完成

查看

6.下载设置

pom中加入下面的内容

复制代码
 <repositories>
        <repository>
            <id>maven-releases</id>
            <url>http://192.168.101.131:58081/repository/maven-releases/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
        </repository>

        <repository>
            <id>maven-snapshots</id>
            <url>http://192.168.101.131:58081/repository/maven-snapshots/</url>
        </repository>

    </repositories>

导入依赖

复制代码
      <dependency>
            <groupId>com.lxz.test</groupId>
            <artifactId>demo1116</artifactId>
            <version>1.0.0</version>
        </dependency>

mvn clean package -DskipTests -e -U -X

7.测试

复制代码
    @Test
    void contextLoads() {
        CommonUtils.SayHello("你好!");
    }
相关推荐
云惠科技(SEO)6 分钟前
泛目录站群技术架构演进观察:2025年PHP+Java混合方案实战笔记
java·人工智能·搜索引擎
牛马baby42 分钟前
Springboot 自动装配原理是什么?SPI 原理又是什么?
java·spring boot·后端
小小深1 小时前
了解JVM
java·jvm
Sunlight_7771 小时前
第五章 SQLite数据库:1、SQLite 基础语法及使用案例
java·linux·服务器·jvm·数据库·tcp/ip·sqlite
JhonKI1 小时前
【从零实现高并发内存池】内存池整体框架设计 及 thread cache实现
java·redis·缓存
何似在人间5751 小时前
SpringAI+DeepSeek大模型应用开发——4 对话机器人
java·机器人·大模型应用开发·spring ai
-曾牛2 小时前
【LangChain4j快速入门】5分钟用Java玩转GPT-4o-mini,Spring Boot整合实战!| 附源码
java·开发语言·人工智能·spring boot·ai·chatgpt
kfepiza2 小时前
HttpSessionListener 的用法笔记250417
java·笔记·servlet·tomcat
冬天vs不冷2 小时前
SpringBoot条件注解全解析:核心作用与使用场景详解
java·spring boot·python
百锦再3 小时前
Android Studio 实现自定义全局悬浮按钮
android·java·ide·app·android studio·安卓