前言

搭建私服后,利用maven进行jar包的上传下载是必不可少的环节,本文将通过讲解pom文件和setting.xml文件的配置方法来介绍如何进行jar包在私服的上传和下载。

一、将jar包上传到maven私服

1. 配置maven的settings.xml文件,在servers标签中配置server
<servers>
        <server>
            <id>releases</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
        <server>
            <id>snapshots</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
    </servers>

这里的话,id并不需要一定和私服中的目录名保持一致,只要和pom文件的配置对应即可。

2. 配置项目的pom.xml文件

这里要注意,下面两处的id需要和步骤1的settings.xml配置保持一致

<distributionManagement>
    <repository>
        <id>releases</id>
        <url>http://localhost:8079/nexus/content/repositories/releases/</url>
    </repository>
    <snapshotRepository>
        <id>snapshots</id>
        <url>http://localhost:8079/nexus/content/repositories/snapshots/</url>
    </snapshotRepository>
</distributionManagement>
3. 执行mvn deploy 命令
mvn deploy

执行后,在nexus页面上看是否上传成功


二、下载私服上的jar包到本地仓库

1. 在maven的settings.xml中配置下载模板
<profiles>
        <profile>
            <id>dev</id>
            <repositories>
            <repository>
            <id>nexus</id>
            <!--仓库地址,即nexus仓库组的地址-->
            <url>http://localhost:8081/nexus/content/groups/public/</url>
            <!--是否下载releases构件-->
            <releases>
            <enabled>true</enabled>
            </releases>
            <!--是否下载snapshots构件-->
            <snapshots>
            <enabled>true</enabled>
            </snapshots>
            </repository>
            </repositories>
            <pluginRepositories>
            <!-- 插件仓库,maven的运行依赖插件,也需要从私服下载插件 -->
            <pluginRepository>
            <id>public</id>
            <name>Public Repositories</name>
            <url>http://localhost:8081/nexus/content/groups/public/</url>
            </pluginRepository>
            </pluginRepositories>
        </profile>
    </profiles>

这里的id并不是固定的,只要与activeProfiles标签中的值进行对应就(activeProfiles标签下面会说到)

2. 配置激活下载模板
<activeProfiles>
        <activeProfile>dev</activeProfile>
    </activeProfiles>
3. 在项目中引用本地仓库没有的jar即可观察到

新的jar包是通过我们的私服进行下载的(由于私服是新建的,所以私服会向中央仓库下载)


maven查看jar包加载顺序 maven查找jar包引用_jar

maven查看jar包加载顺序 maven查找jar包引用_jar包_02


下载完成后,我们可以在我们私服的center目录下看到我们刚刚下载的包


三、将第三方jar包安装到本地仓库和maven私服

我们在pom文件配置了某个jar的坐标后,如果本地仓库没有的话,就会先在我们的私服上面找jar包,如果私服也没有,就会到中央仓库找jar包。但是并不是所有的jar都可以在中央仓库上面下载得到,比如常用的Oracle数据库驱动的jar包在中央仓库就不存在。这个时候就需要我们自己到对应的官网上下载jar包上传到我们的本地和私服仓库上。

(一)将第三方jar安装到本地数据库
1. 下载第三方jar到本地
2. 使用mvn install命令安装到本地仓库
mvn install:install-file -Dfile=ojdbc14-10.2.0.4.0.jar -DgroupId=com.oracle -DartifactId=ojdbc14 –Dversion=10.2.0.4.0 -Dpackaging=jar

-Dfile表示要安装的jar包名
-DgroupId表示生成的组织名
-DartifactId表示生成的项目id
-Dversion表示版本号
-Dpackaging表示生成的jar的格式

(二)将第三方的jar安装到私服上

步骤和安装到本地差不多,只是私服涉及到网络传输,需要我们配一下url上传地址

1. 下载第三方jar包到本地
2. 在maven的settings.xml配置文件中配置,id只要和下面的命令匹配就行
<server>
        <id>thirdparty</id>
       <username>admin</username>
       <password>admin123</password>
    </server>
3. 执行mvn deploy命令上传即可
mvn deploy:deploy-file -Dfile=ojdbc14-10.2.0.4.0.jar -DgroupId=com.oracle -DartifactId=ojdbc14 –Dversion=10.2.0.4.0 -Dpackaging=jar –Durl=http://localhost:8081/nexus/content/repositories/thirdparty/ -DrepositoryId=thirdparty