概述
linux 内网环境搭建 maven 私库
参考资料:
https://www.codenong.com/cs106446840/
https://blog.csdn.net/lch_wyl/article/details/122839744
https://blog.csdn.net/qq243920161/article/details/109701704
https://blog.csdn.net/xu_san_duo/article/details/90611811
1、环境准备
首先安装好maven和jdk
首先下载 nexus包 本次使用版本 nexus-3.31.1-01-unix.tar
上传ftp 解压
tar -zxvf nexus-3.31.1-01-unix.tar
解压后的文件夹包括:
nexus-3.37.3-02
:程序的安装执行文件
sonatype-work
:数据存储、缓存等文件
2、启动
进入文件夹
cd nexus-3.37.3-02bin
执行 ./nexus start
启动(我这里防火墙关闭了,如果未关闭需暴漏端口 默认为8081)
首次登陆需输入密码
查看密码:cat /opt/sonatype-work/nexus3/admin.password
输入 ip+8081(默认端口) 登陆 第一次会强制修改密码
启动成功!
3、配置仓库
1、仓库类型
- group(仓库组)用来聚合代理仓库和宿主仓库,为这些仓库提供统一的服务地址,以便 Maven 可以更加方便地获得这些仓库中的构件。
- hosted(宿主仓库) 用来代理远程公共仓库,如 Maven 中央仓库、JBoss 远程仓库。
- proxy(代理仓库)用来代理远程公共仓库,如 Maven 中央仓库、JBoss 远程仓库。
- virtual(虚拟仓库) (不常用)
这里搭建 hosted 宿主仓库
选择如图所示,这样才可以对私库进行更新
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sH98hMfj-1668765551311)(C:UsersHONORAppDataRoamingTyporatypora-user-imagesimage-20221114132437824.png)]
**下面的选项要切换成allow redeploy **,这样才能运行重复上传一个包,不然会报400:bad request。
Strict 修改为 Permissive 很重要!!! (图片中忘记改了)(这里遇到坑是 批量上传jar 时 有的包死活传不上去,后来新建库 把这个替换了才可以的)
点击 Create repository 即可。
4、本地jar上传
由于是内网开发,上传jar目前有两种办法
- 1、在外网找台机器,下载配置好 nexus 后 连接外网
- 2、将本地 maven 打包 上传
ps: 只能上传 hosted 仓库
这里使用第二种方法,第一种 需区分 win/linux 版本
-
第一步 将本地 maven仓库 打包 为 repository.zip
打包前 记得要批量删除 脏数据
找到仓库 - cmd - 执行以下脚本
for /r %i in (*.lastUpdated) do del %i
for /r %i in (*.repositories) do del %i
-
通过ftp 上传任意目录
-
解压
unzip repository.zip
4、进入 repository 目录 创建 mavenimport.sh 脚本文件 (需要和jar同级别)
touch mavenimport.sh
写入以下内容
#!/bin/bash
# copy and run this script to the root of the repository directory containing files
# this script attempts to exclude uploading itself explicitly so the script name is important
# Get command line params
while getopts ":r:u:p:" opt; do
case $opt in
r) REPO_URL="$OPTARG"
;;
u) USERNAME="$OPTARG"
;;
p) PASSWORD="$OPTARG"
;;
esac
done
find . -type f -not -path './mavenimport.sh*' -not -path '*/.*' -not -path '*/^archetype-catalog.xml*' -not -path '*/^maven-metadata-local*.xml' -not -path '*/^maven-metadata-deployment*.xml' | sed "s|^./||" | xargs -I '{}' curl -u "$USERNAME:$PASSWORD" -X PUT -v -T {} ${REPO_URL}/{} ;
5、输入 chmod a+x mavenimport.sh
进行可执行授权
6、执行命令 ./mavenimport.sh -u admin -p admin123 -r http://ip:8081/repository/maven-releases/
7、上传完毕后 即可在仓库查看
5、本地maven 配置访问私库
如下配置 http://15.48.83.226:8081/repository/maven-public/ 为 我的组
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<name>internal nexus repository</name>
<url>http://15.48.83.226:8081/repository/maven-public/</url>
</mirror>
</mirrors>
ository`
<url>http://15.48.83.226:8081/repository/maven-public/</url>
</mirror>
</mirrors>
最后
以上就是如意发夹为你收集整理的linux 内网环境搭建 maven 私库linux 内网环境搭建 maven 私库的全部内容,希望文章能够帮你解决linux 内网环境搭建 maven 私库linux 内网环境搭建 maven 私库所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复