优选主流主机商
任何主机均需规范使用

如何在CentOS系统上快速搭建Maven本地中央仓库

环境

安装java

在这里使用yum来安装java的jdk,可以使用指令yum search java | grep jdk来查看yum下提供了哪些jdk版本。这里选择1.8版本,安装指令为:sudo yum install java-1.8.0-openjd

安装完毕后还需要修改环境变量,这里的环境变量我们将在/etc/profile.d中添加一个java.sh文件中设置,指令如下:

1 2 cd /etc/profile .d sudo vim java.sh

在里面填写如下内容:

1 2 3 4 5 6 #set java environment java_home=/usr/lib/jvm/java-1.8.0-openjdk-1.7.0.75.x86_64 jre_home=$java_home/jre class_path=.:$java_home/lib/dt.jar:$java_home/lib/tools.jar:$jre_home/lib path=$path:$java_home/bin:$jre_home/bin export java_home jre_home class_path path

然后保存并退出。(这里需要了解vim的操作,本文将不详述)

最后在用source /etc/profile启动环境变量,可以使用java -version查看配置是否成功。

安装nexus

用wget获取nexus的安装包,这里我安装的是2.11.2版本,指令如下:

代码如下: wget https://sonatype-download.global.ssl.fastly.net/nexus/oss/nexus-2.11.2-03-bundle.tar.gz

然后在当前目录下解压缩并进入文件夹:

1 2 3 tar -zxvf nexus-2.11.2-03-bundle. tar .gz mv nexus-2.11.2-03 nexus #重命名文件夹 cd nexus

解压缩后可以看到有两个文件夹,一个是nexus服务,一个是它的私有仓库目录

然后编辑nexus脚本,它位于nexus_home/bin中,指令如下:

1 vi bin/nexus

run_as_user改为run_as_user=root

这里还需要调整你的防火墙配置,开放恰当的端口,这里就不赘述了。

然后使用下面指令启动nexus服务:

1 ./bin/nexus start

这时就可以在浏览器上访问到nexus服务啦!

可以从右上角的log in登录进入系统,默认的角色有三个,我们先用admin的角色进入系统,admin的默认密码为admin123.

点击左侧的users查看当前系统的用户。可以看到一共三个用户,admin,deployment和anonymous。

admin:该用户拥有nexus的全部权限,默认密码为admin123。

deployment:该用户能够访问nexus,浏览仓库内容、搜索、上传部署构件,但是不能对nexus进行任何配置,默认密码为deployment123。

anonymous:该用户对应了所有未登录的匿名用户,它们可以浏览仓库并进行搜索。

再点击repositories我们可以看到有一下几种默认的类型,我们这里将使用third-party类型的repository,所以我们需要开启其支持编译上传

还有很多可以通过ui进行操作,我们这里将不再赘述。下面将介绍如何在本地通过maven将打包好的jar上传到nexus上。

maven 打包和部署

首先我们需要修改本地的maven配置,添加远程仓库的用户名和密码。首先找到本地maven的settings.xml文件。可以使用mvn -version来找到maven的地址:

这里可以看到maven home的地址,然后进入这个文件夹config下的settings.xml在里面添加server。这里我们将使用third party那个仓库。

然后在需要打包的项目的maven依赖中添加如下内容:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 < build >   < plugins >    < plugin >     < groupid >org.apache.maven.plugins</ groupid >     < artifactid >maven-compiler-plugin</ artifactid >     < configuration >      < source >1.8</ source >      < target >1.8</ target >     </ configuration >    </ plugin >      < plugin >     < groupid >org.apache.maven.plugins</ groupid >     < artifactid >maven-jar-plugin</ artifactid >     < version >2.4</ version >     < configuration >      < archive >       < manifest >        < addclasspath >true</ addclasspath >        < classpathprefix >lib/</ classpathprefix >       </ manifest >      </ archive >     </ configuration >    </ plugin >      <!--部署插件-->    < plugin >     < artifactid >maven-deploy-plugin</ artifactid >     < executions >      < execution >       < id >deploy</ id >       < phase >deploy</ phase >       < goals >        < goal >deploy</ goal >       </ goals >      </ execution >     </ executions >    </ plugin >   </ plugins > </ build >   < distributionmanagement >   <!-- id需要和全局配置文件中服务器配置的id一致 -->     < repository >    < id >3rd party</ id >    < url >repository_url</ url >   </ repository > </ distributionmanagement >

这里的repository_url是指你的仓库的位置,可以在之前展示的repository页面查看到

maven打包的指令

1 mvn clean package

此时会在./target目录下看到打包好的jar文件,然后使用如下指令部署:

代码如下: mvn deploy:deploy-file -dgroupid=com.xy.oracle -dartifactid=ojdbc14 -dversion=10.2.0.4.0 -dpackaging=jar -dfile=./target/xxx.jar -durl=http://ip:8081/nexus/content/repositories/thirdparty/ -drepositoryid=thirdparty

之后就可以在web端看到部署上去的jar包了。

未经允许不得转载:搬瓦工中文网 » 如何在CentOS系统上快速搭建Maven本地中央仓库