在Centos上搭建Maven中央仓库的方法
作者:raledong 发布时间:2022-05-30 19:32:24
环境
安装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文件中设置,指令如下:
cd /etc/profile.d
sudo vim java.sh
在里面填写如下内容:
#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
然后在当前目录下解压缩并进入文件夹:
tar -zxvf nexus-2.11.2-03-bundle.tar.gz
mv nexus-2.11.2-03 nexus #重命名文件夹
cd nexus
解压缩后可以看到有两个文件夹,一个是nexus服务,一个是它的私有仓库目录
然后编辑nexus脚本,它位于NEXUS_HOME/bin
中,指令如下:
vi bin/nexus
将RUN_AS_USER
改为RUN_AS_USER=root
这里还需要调整你的防火墙配置,开放恰当的端口,这里就不赘述了。
然后使用下面指令启动nexus服务:
./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依赖中添加如下内容:
<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打包的指令
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包了。
来源:https://segmentfault.com/a/1190000014442459


猜你喜欢
- 今天突然发现自己买了一年快过期了的搬瓦工,除了少数时间拿来当梯子用用其它也没用上,所以流量还剩这么多。。。所以就想试试把本地写的nodejs
- 给文件夹设置权限一删除所有的Everone权限,包括:所有磁盘根目录C:\WindowsC:\Documents and SettingsC
- GoDaddy主机帐户的操作系统决定着自己的网站可以使用的脚本语言及网站功能。下面是GoDaddy虚拟主机帐户支持的脚本语言及功能列表:&n
- 不知道大家在google上面搜索的时候,在看到标题下面有段“该网站可能含有恶意软件,有可能会危害您的电脑。”有何反应?如图:500){thi
- 搜索引擎流量占据网站流量很大一部份,为此,我们邀请了SEO知名人士“王通”给大家讲了一些SEO的基础知识.以下为王通老师今天下午培训全部记录
- 一、报错信息1、安装后显示安装成功,但是出现服务无法启动错误代码12、以管理员身份cmd,进入Apache24/bin目标下,执行httpd
- 10月16日消息昨日下午,微软在北京发布其旗下最新品牌windowsphone,酷6网出现在微软全新手机操作系统windowsmobile6
- 我是来自创业资讯网的小编,今天我们来讲讲如果勾引蜘蛛, 让蜘蛛为我所用快速更新网站内容和快照,有很多网站在发布后, 百度谷歌的更新速度很慢,
- 如此成功的个人站长在中国站长中只能占据少数,像hao123的前主人,和广捷居的现主人,都是相对比较成功的,他们各自抓住了机遇,实现了大多数站
- 做站半年多了,因为我当时做站的目的就是帮助想创业的人,因此我把我这一段时间的过程和经验同大家分享。2006年我就知道做网站很有前途,但一直到
- 环境:VMware VCSA 6.7 (VMware-VCSA-all-6.7.0-8169922.iso)Step 1:选择从vSpher
- 在扩展外部链接时,PageRank会根据URL来作出判断。虽然在同一域名中每个网页都具有一定的关联性,但是搜索引擎还是会根据URL作出最终的
- WAP SEO和普通的SEO,也就是WEB SEO的目的都是为了在搜索引擎获得很好的排名,而WAP的页面要怎么优化呢?也就是说WAP SEO
- Site5是一家成立于1999年年初,至今(2008年9月23日)已经经营近十年了,它是一家具有极高信誉的虚拟主机服务商,其服务器位于圣拉蒙
- 如果你是一个项目管理者,可能听说过redmine。它是一个项目管理系统的后起之秀,具备了广泛的项目管理平台特点同时,还提供了诸多的独有的特性
- 应了那句“夺天下难守天下更难”的话,服务器的维护就好比“守天下&rdqu
- 我的开发环境是python3.11以下资料来自对GPT回答的整合:部署Flask应用程序到AWS Linux服务器,你可以选择多种方式。下面
- docker启动已存在容器查看所有容器docker ps -a启动已存在容器docker start 容器IDdocker查看容器启动命令(
- 一、域名过期后第一阶段域名过期后1~45天内,将处于注册商保留状态whois英文状态:REGISTRAR-HOLD二、域名过期后第二阶段 注
- WordPress是目前非常流行的成熟免费博客系统。现在的网络中每天都会产生大量的垃圾内容(SPAM),很多开启了评论功能的WordPres