nexus仓库的基本用法
① 启动nexus。
上一章有提到:https://www.cnblogs.com/NYfor2018/p/9079068.html
② 访问http://localhost:8081/ 点击右上角的sign in登录,默认用户名是:admin 密码:admin123。
登录之后可以点击右上角的admin,修改默认密码。
仓库类型
① 点击最上排的齿轮按钮,然后点击左边的Repository—Repositories菜单,可以看到当前仓库列表。
format列:maven2是Java仓库;nuget是.net仓库。
type列:group表示仓库组;hosted表示宿主;proxy表示代理;virtual表示虚拟。
接下来一一介绍不同type的仓库
proxy:代理仓库
局域网内用户首先从代理仓库下载jar包,如果代理仓库没有就从远程仓库下载到代理仓库中。
① 点击列表中的maven-central代理仓库,会出现设置页面。如下将默认远程仓库修改为阿里云镜像:http://maven.aliyun.com/nexus/content/groups/public/,点击最下面的SAVE按钮保存。
② 返回到列表页面,点击maven-central右边的copy按钮,复制仓库地址:
③ 在项目pom.xml文件中设置代理仓库,如下url就是刚才复制的地址,另外再设置一个spring-core-5.0.6.RELEASE的依赖包。
<repositories> <repository> <id>central</id> <name>central</name> <url>http://localhost:8081/repository/maven-central/ </url> </repository> </repositories>
④ 如果在此之前在settings.xml中设置了镜像仓库,需要将其注释掉,代理仓库才会生效。如果在此之前下载了spring-core,在本地仓库删除其jar包,现在从代理仓库重新下载。在eclipse中右键点击项目—maven—update project。
把画面切换到Nexus页面,点击最上排的方块图标,选择下面的browse—components菜单,点击maven-central仓库,如图:
可以看到,spring-core-5.0.6.RELEASE已经成功下载到代理仓库之中,局域网内其他人可以直接从这里下载依赖jar包,而不需要连接外网。
hosted:宿主仓库
与代理仓库相反,它没有远程仓库,自己就是终点。主要用于多个模块开发时,将某一模块代码打包成jar包,发布到宿主仓库,其他项目成员可以从这个仓库下载你的打包好的模块jar包,在其他模块中使用这个模块类的功能。
① 在pom.xml中设置发布仓库如下,另将默认的<version>0.0.1-SNAPSHOT</version>中的内容改成1.0,不能由SNAPSHOT字样。
<distributionManagement> <repository> <id>releases</id> <name>releases</name> <url>http://localhost:8081/repository/maven-releases/</url> </repository> </distributionManagement>
② 在settings.xml中设置用户名密码,id要和上面对应。注意:匿名用户只有读取的权限,没有发布的权限。
<servers> <server> <id>releases</id> <username>admin</username> <password>admin123</password> </server> </servers>
③ 右击项目—Run as—maven build…--在goals输入deploy,运行。
③ 运行完之后返回nexus页面,点击Browse—Components菜单—maven-release仓库,如下MavenTest项目已经成功发布到宿主仓库了。
参考文章:https://blog.csdn.net/wangb_java/article/details/53953891