使用nexus搭建maven仓库
将一个maven项目放到私服的过程……
使用maven时,不用导入jar包,所有的jar包依赖,会通过中央仓库自动下载到本地(C:\Users\XX\.m2\repository)
当然,是要在连网的情况下,可能速度比较慢。
我们可以用nexus搭建maven仓库(本地私服)。这样项目需要jar包依赖时,可以从本地仓库获取,本地仓库没有的话,再从中央
仓库获取。速度会比较快。
1.nexus2.14.8-01.war
将war文件放置在tomcat-->webapp下,启动tomcat自动解压
2.输入网址:localhost:8081/nexus-2.14.8-01,看到如下页面,说明nexus安装成功
3.配置Nexus
点击log in
4.输入用户名:admin,密码:admin123
5.
6.更新jar索引
7.
8.
9.http://localhost:8081/nexus-2.14.8-01/content/groups/public/
在maven中使用nexus
setting.xml的mirrors节点
<mirror>
<id>nexus</id>
<mirrorOf>central</mirrorOf>
<name>internal nexus repository</name>
<url>http://localhost:8081/nexus-2.14.8-01/content/groups/public/</url>
这一段配置,描述的便是 上一步中提到的那个Public Reposiories的信息,这个地址便是他的地址,这些写都可以再界面上看到
</mirror>这里的是localhost是在本机搭建测试用的,如果是公司内部的仓库的话,可自行修改成公司内网ip地址。
配置之后,在使用maven的时候,就会通过私服了。而不是直接从远程取了。
(没有配置之前,maven默认在远程的中央仓库下载)
在idea中导入一个maven项目
刷新,等待导包
在pom.xml中添加发布到nexus的一些配置.
包括id和发布到的url地址最主要的是发布的地址地址一定要准确才能够发布成功,有些还可能需要配置对应的用户名和密码,
!-- 项目发布管理 -->
<distributionManagement>
<repository>
<id>releases</id>
<name>User Project Release</name>
<url>http://localhost:8081/nexus-2.14.8-01/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>User Project SNAPSHOTS</name>
<url>http://localhost:8081/nexus-2.14.8-01/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement>
在maven的settings.xml中增加发布信息server的配置.主要配置id以及用户名和密码配置完用户名和密码之后,然后点击保存即可,用户名和密码一般都是明文存储,
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
先清空再编译
maven 命令
mvn clean 清空生成的文件
mvn compile 编译
mvn test 编译并测试
mvn site 生成项目相关信息的网站
mvn validate 验证工程是否正确,所有需要的资源是否可用。
mvn verify 运行任何检查,验证包是否有效且达到质量标准。
mvn package 生成target目录,编译、测试代码,生成测试报告,生成jar/war文件
mvn install 在本地Repository中安装jar
mvn deploy 在整合或者发布环境下执行,将最终版本的包拷贝到远程的repository,使得其他的开发者或者工程可以共享。
貌似成功!!!