maven-dao层的代码 工程上传到私服
配置
第一步: 需要在客户端即部署 ssm_dao 工程的电脑上配置 maven环境,并修改 settings.xml
文件, 配置连接私服的用户和密码 。
此用户名和密码用于私服校验,因为私服需要知道上传的账号和密码是否和私服中的账号和
密码一致。
就是在自己安装的maven工程中修改配置文件,在servers标签中加入如下代码
如果你的密码没有修改则是默认
用户名admin
密码admin123
<server> <id>releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server>
releases 连接发布版本项目仓库
snapshots 连接测试版本项目仓库
第二步: 配置项目maven-dao层的代码 中 pom.xml。
配置私服仓库的地址,本公司的自己的 jar 包会上传到私服的宿主仓库,根据工程的版本号
决定上传到哪个宿主仓库,如果版本为 release 则上传到私服的 release 仓库,如果版本为
snapshot 则上传到私服的 snapshot 仓库
加下面这一段
<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>
注意: pom.xml 这里 和 settings.xml 配置 对应!
测试
1、 首先启动 nexus
2、 对 ssm_dao 工程执行 deploy 命令
根据本项目pom.xml中version定义决定发布到哪个仓库,如果version定义为snapshot,
执行 deploy后查看 nexus 的 snapshot仓库, 如果 version定义为 release则项目将发布到 nexus
的 release 仓库,本项目将发布到 snapshot 仓库:
从私服下载 jar 包例如所需的dao层代码
没有配置 nexus 之前,如果本地仓库没有,去中央仓库下载,通常在企业中会在局域网内部署一台私服服务器, 有了私服本地项目首先去本地仓库找 jar,如果没有找到则连接私服从私服下载 jar 包,如果私服没有 jar 包私服同时作为代理服务器从中央仓库下载 jar 包,这样做的好处是一方面由私服对公司项目的依赖 jar 包统一管理,一方面提高下载速度, 项目连接私服下载 jar 包的速度要比项目连接中央仓库的速度快的多。
在 maven中的setting.xml 中配置仓库
在profiles标签中配置如下代码
<!-- 下载jar包配置 --> <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> </pluginRepositories> </profile>
将activeProfiles加在profiles标签后面
<activeProfiles> <activeProfile>dev</activeProfile> </activeProfiles>
就可以实现下载了