共计 2003 个字符,预计需要花费 6 分钟才能阅读完成。
私服 (nexus)
私服的搭建一般由运维人员来做的
安装 nexus 和 启动
解压 nexus-2.12.0-01-bundle.zip 后得到两个文件夹
私服仓库
私服软件: BS 结构的, 通过浏览器访问
安装:
进入到私服的 bin 目录下: nexus.bat install
安装成功后本地服务里会多了个 nexus 服务, 默认没有启动
我们通过命令行启动: nexus.bat start
启动失败的解决方法:nexus/nexus-2.12.0-01/bin/jsw/conf/wrapper.conf
把第 15 行: wrapper.java.command=xxx(jdk 安装路径)/bin/java.exe
访问私服:
http://localhost:8081/nexus
登录 nexu
用户名 / 密码 (默认): admin/admin123
仓库类型
Virtual—> 虚拟仓库(不起任何作用, 以后也用不到)
Proxy—> 代理仓库
Hosted—> 宿主仓库 — 本地仓库
Group—> 组
需求
把 dao 放到私服上,然后 service 从私服上下载
第一步: 需要在客户端 (部署 dao 工程的电脑) 上配置 maven 环境, 并修改 settings.xml 文件, 配置连接私服的用户和密码
此用户名和密码用于私服校验, 因为私服需要知道上传都的账号和密码是否和私服中的账号和密码一致
第二步: 配置项目 pom.xml, 配置私服地址
配置私服仓库的地址, 本公司的自己的 jar 包会上传到私服的宿主仓库, 根据工程的版本号决定上传到哪个宿主仓库, 如果版本为 release 则上传到私服的 release 仓库, 如果版本为 snapshot 则上传到私服的 snapshot 仓
注意:pom.xml 这里 <id> 和 settings.xml 配置 <id> 对应
在 maven 中配置用户信息 (settings.xml)
右键 –>run as—>maven built…—>deploy
修改后 pom.xml 版本号要改
[XML] 纯文本查看 复制代码
?
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
[XML] 纯文本查看 复制代码
?
<distributionManagement>
<repository>
<id>releases</id>
<url>http://localhost:8081/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://localhost:8081/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
将 ssh_dao 的这个工程打成 jar 包,并放入到私服上去
第一步 修改 settings.xml
删除本地仓库中的 dao
update service 工程,出现以下信息说明已经成功
[XML] 纯文本查看 复制代码
?
<profile>
<!–profile 的 id–>
<id>dev</id>
<repositories>
<repository>
<!-- 仓库 id,repositories 可以配置多个仓库,保证 id 不重复 -->
<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 不允许重复,如果重复后边配置会覆盖前边 -->
<id>public</id>
<name>Public Repositories</name>
<url>http://localhost:8081/nexus/content/groups/public/</url>
</pluginRepository>