本帖最后由 我是楠楠 于 2018-5-22 15:02 编辑
【郑州校区】项目管理工具Maven6
九、私服nexus(一)nexus安装1. 安装nexus 将资源下的私服文件夹中的nexus-2.12.0-01-bundle.zip 解压 在命令提示符下,进入此目录,敲入命令 [AppleScript] 纯文本查看 复制代码
nexus install 如有下列提示则证明安装成功。 如果想卸载,命令为: [AppleScript] 纯文本查看 复制代码 nexus uninstall |
2. 启动nexus 在服务中找到nexus ,右键启动 3. 进入nexus 点击右上角的Log In ,在弹出窗口中输入username为admin , password为admin123 ,点击Log In按钮 (二)构建索引刚刚安装好的nexus是无法直接搜索到jar包的,必须下载索引才可以正常使用。 这两个文件一般在此页面的最后的位置,另外还需要在网上下载一个名为indexer-cli-5.1.1.jar 的jar包 将以下三个文件放入一个文件夹 cmd执行: [AppleScript] 纯文本查看 复制代码
java -jar indexer-cli-5.1.1.jar -u nexus-maven-repository-index.gz -d indexer 执行后生成目录indexer ,目录下的文件是索引文件,如下图将D:\nexus-2.12.0-01-bundle\sonatype-work\nexus\indexer\central-ctx 目录下的文件删除,将上边的索引文件拷贝到此目录下。 拷贝后重新启动nexus,然后进入nexus搜索jar包发现可以进行搜索了。 (三)仓库类型1、hosted:宿主仓库,自己项目的jar要放到hosted类型的仓库中。 2、proxy:代理仓库,代理中央仓库 3、virtual:虚拟仓库,存储了maven1的构件,一般不用。 4、group:仓库组,将一些仓库组成一个组,自己项目连接仓库组去下载jar包。 平常开发中都去连接仓库组,仓库组中包括:hosted、proxy等。
仓库所在的文件夹见下面的截图:
(四)镜像配置nexus已经安装好了,我们要开始使用它了。现在我们需要在maven的配置文件settings.xml中配置镜像,让maven找私服,而不是直接到中央仓库下载。 打开maven的配置文件settings.xml,添加如下配置: [AppleScript] 纯文本查看 复制代码
<mirrors>
<mirror>
<id>nexus</id>
<mirrorOf>*</mirrorOf>
<url>http://localhost:8081/nexus/content/groups/public/</url>
</mirror>
</mirrors> mirrors为镜像组,可以配置多个mirror(镜像),我们这里配置的是nexus中的中央代理仓库。
配置好后,我们需要创建一个项目来测试一下,看看是不是可以通过nexus来下载jar包。
测试步骤: 创建maven工程(jar),在pom.xml中添加依赖,观察nexus中是否下载了相应的jar包,目录为 nexus-2.12.0-01-bundle\sonatype-work\nexus\storage\central
(五)发布自己的工程jar到nexus1. 创建maven工程itcastutil (jar) 坐标信息: Group Id : cn.itcast.util Artifact Id: itcastutil 创建包cn.itcast.util 创建类DateUtil [AppleScript] 纯文本查看 复制代码 package cn.itcast.util;
import java.util.Calendar;
import java.util.Date;
/**
* 日期工具类
* @author Administrator
*
*/
public class DateUtil {
/**
* 获取当前年份
* @return
*/
public static int getYear(){
Calendar calendar=Calendar.getInstance();
calendar.setTime(new Date());
return calendar.get(Calendar.YEAR);
}
} |
在pom.xml中引入如下配置信息 [AppleScript] 纯文本查看 复制代码 <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> |
2. 在Maven中配置 将以下配置信息放入maven的settings.xml中 [AppleScript] 纯文本查看 复制代码 <servers>[/align]<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers> |
注意:settings.xml 配置 <id>和 pom.xml<id> 对应! 然后执行命令 deploy ,有如下提示表示部署成功 我们在私服中进行查询,发现可以查到刚才我们上传的jar (六)发布第三方的工程jar到nexus有很多jar包由于版权等问题,并不会出现在中央仓库中,比如oracle的驱动,那如何将这类jar包放在nexus中呢?我们看下列操作步骤: (1)选择左侧菜单的Repositories, 在Repositories窗口中选择3rd party (2)在3rd party窗口中选择Artifact Upload
(3)在Artifact Upload选项卡中填写坐标,并上传jar包。
上传jar包选择oracle的驱动。 填写坐标
有下列提示则为上传成功
上传成功后可以在3rd party库中找到此jar包
更多 【郑州校区】项目管理工具Maven4
【郑州校区】项目管理工具Maven5传智播客·黑马程序员郑州校区地址 河南省郑州市高新区长椿路11号大学科技园(西区)东门8号楼三层 联系电话0371-56061160 / 61/62 来校路线地铁一号线梧桐街站A口出
|