好做网站,现在asp做网站,品牌型网站建设,网站首页布局设计代码Nexus3 是一个仓库管理器#xff0c;它极大地简化了本地内部仓库的维护和外部仓库的访问。 平常我们在获取 maven 仓库资源的时候#xff0c;都是从 maven 的官方#xff08;或者国内的镜像#xff09;获取。团队的多人员同样的依赖都要从远程获取一遍#xff0c;从网络方… Nexus3 是一个仓库管理器它极大地简化了本地内部仓库的维护和外部仓库的访问。 平常我们在获取 maven 仓库资源的时候都是从 maven 的官方或者国内的镜像获取。团队的多人员同样的依赖都要从远程获取一遍从网络方面来说这是非常耗时的。这时候就需要在局域网内部署一个 Nexus3 用来管理 Mavenapt、yum、gradle、pypi、docker 等等仓库。 有些公司都不提供外网给项目组人员因此就不能使用 maven 访问远程的仓库地址所以很有必要在局域网里找一台有外网权限的机器搭建 Nexus3 私服然后开发人员连到这台私服上这样的话就可以通过这台搭建了 Nexus3 私服的电脑访问 maven 的远程仓库。 一、私服NEXUS安装部署
1.1 官网下载
下载地址: https://www.sonatype.com/products/repository-oss-download 1.2 安装部署
scp Downloads/nexus-3.65.0-02-unix.tar.gz root10.211.55.38:~
scp Downloads/jdk-8u391-linux-aarch64.tar.gz root10.211.55.38:~
tar -zxvf nexus-3.65.0-02-unix.tar.gz -C /opt/
tar -zxvf jdk-8u391-linux-aarch64.tar.gz -C /opt/vim ~/.bash_profile
# 内容BEGIN
export PATH$PATH:/opt/nexus-3.65.0-02/bin
export JAVA_HOME/opt/jdk1.8.0_391
PATH$PATH:$JAVA_HOME/bin
# 内容ENDsource ~/.bash_profile[rootnexus ~]# nexus
WARNING: ************************************************************
WARNING: Detected execution as root user. This is NOT recommended!
WARNING: ************************************************************
Usage: /opt/nexus-3.65.0-02/bin/nexus {start|stop|run|run-redirect|status|restart|force-reload}提示
Detected execution as root user. This is NOT recommended!解决
# https://www.cnblogs.com/fzhu/articles/15248776.html
vim /opt/nexus-3.65.0-02/bin/nexus.rc
# 1.加入run_as_userroot
# 2.或者加入系统变量export RUN_AS_USERroot
# 3.vim nexus; 成run_as_rootfalse
vim /opt/nexus-3.65.0-02/bin/nexus
# 4.或者添加nexus用户(非必要)即
useradd nexus
chown -R nexus:nexus /opt/nexus
然后 su nexus 执行./nexus start 就成功了。关闭防火墙
# 关闭防火墙
systemctl stop firewalld systemctl disable firewalld访问: http:10.211.55.38:8001
cat /opt/sonatype-work/nexus3/admin.password
9ed814d8-f1ad-4a07-b57f-85fe79eb9918点击Next进行修改密码输入新密码进行修改这里我改成admin123
Nexus 有 3 个类型的数据仓库分别是 hostedproxygroup
hosted 宿主仓库主要用于部署无法从公共仓库获取的构件以及自己或第三方的项目构件 proxy 代理仓库代理公共的远程仓库
group 仓库组Nexus 通过仓库组统一管理多个仓库这样我们在项目中直接请求仓库组即可请求到仓库组管理的多个仓库。
Nexus 预定义了 2 个本地仓库分别是 maven-releases, maven-snapshots
maven-releases: 这里存放我们自己项目中发布的构建通常是 Release 版本的也就是正式版。maven-snapshots: 这个仓库非常的有用它的目的是让我们可以发布那些非 release 版本非稳定版本也就是快照版。 手动上传本地 jar 包例 ojdbc6-11.2.0.4.jar当然你可以任选 jar 包上传 这样一个jar包就上传成功了。
如果你的工程中使用的 jar 包在私服中没有他就会自动连接远程仓库进行下载这不是我们希望的结果我们希望它去阿里 maven 库去下载这样下载速度会更快。 我们需要创建一个代理仓库代理阿里Maven仓库 阿里仓库地址: https://developer.aliyun.com/mvn/guide 点击保存然后选择maven-public 完成
maven配置 conf/settings.xml
上传
servers!-- 发布版 --serveridreleases/idusernameadmin/usernamepasswordadmin123/password/server!-- 快照版 --serveridsnapshots/idusernameadmin/usernamepasswordadmin123/password/server
/servers下载
mirrorsmirroridnexus/idmirrorOf*/mirrorOfnamenexus maven/nameurlhttp://10.211.55.38:8081/repository/maven-public//url/mirror
/mirrors项目配置
distributionManagementrepositoryidreleases/idnamemaven-releases/nameurlhttp://10.211.55.38:8081/repository/maven-releases//urluniqueVersiontrue/uniqueVersion/repositorysnapshotRepositoryidsnapshots/idnamemaven-snapshots/nameurlhttp://10.211.55.38:8081/repository/maven-snapshots//urluniqueVersiontrue/uniqueVersion/snapshotRepository
/distributionManagement只要执行命令 mvn deploy即可。
这里配置了两个仓库一个正式版、一个快照版maven 是如何区分你要发布到哪一个仓库呢
如果你的版本带着 releases也就是 0.0.1-releases就会发布到 maven-releases。
如果你的版本带着 snapshots也就是 0.0.1-snapshots就会发布到 maven-snapshots。
装依赖到私服快照仓
mvn deploy:deploy-file
-DgroupIdcom.oracle.database.jdbc
-DartifactIdojdbc6
-Dversion11.2.0.4
-Dpackagingjar
-Dfile~/Downloads/ojdbc6-11.2.0.4.jar
-Durlhttp://10.211.55.38:8081/repository/maven-snapshots/
-DrepositoryIdsnapshots二、安装依赖到本地
mvn install:install-file
-DgroupIdcom.oracle.database.jdbc
-DartifactIdojdbc6
-Dversion11.2.0.4
-Dpackagingjar
-Dfile~/Downloads/ojdbc6-11.2.0.4.jar详细笔记后续更新…