目录
1.nexus简介
nexus是一个强大的maven仓库管理器,它极大的简化了本地内部仓库的维护和外部仓库的访问.
nexus是一套开箱即用的系统不需要数据库,它使用文件系统加Lucene来组织数据
nexus使用ExtJS来开发界面,利用Restlet来提供完整的REST APIs,通过IDEA和Eclipse集成使用
nexus支持webDAV与LDAP安全身份认证.
nexus提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,占用较少的内存,基于简单文件系统而非数据库.
私服仓库的工作流程

2.下载nexus
地址:https://www.sonatype.com/
下载地址:https://www.sonatype.com/download-nexus-repo-oss
版本/收费/免费:Nexus Repository Manager 仓库管理有2个版本,专业版和oss版,oss版是免费的,专业版是收费的,我们使用oss版。
解压缩后的目录结构

3.启动nexus
在conf目录下有nexus.properties设置启动端口等信息,默认是8001,可以手动编辑修改

启动程序目录在bin/jsw下,根据自己的操作系统进入到对应的目录下,64位操作系统进入windows-x86-64目录下,install-nexus.bat为注册服务,start-nexus.bat为启动服务

直接点击bat文件可能会报wrapper | OpenSCManager failed – 拒绝访问错误

需要右键选中bat文件,以管理员身份运行才能执行bat文件
4.访问nexus
浏览器输入http://localhost:8081/nexus进行访问

点击Log in进行登录,用户名默认admin,密码默认admin123

登录后可以选择profile进行密码的修改

5.nexus服务介绍
点击Repositories,可以看到详情

nexus默认的仓库分类
snapshot库:发布内部模块中snapshot模块的仓库,用来管理快照版本的构建,snapshot意味快照,如果项目版本是snaphost,意味着项目在开发中,还不稳定
6.相关配置
在maven安装目录下的conf目录下,对setting.xml文件进行配置,配置访问nexus的用户名密码
<servers> <server> <id>releases</id> <username>admin</username> <password>admin123</password> </server> <server> <id>snapshots</id> <username>admin</username> <password>admin123</password> </server> </servers>

7.页面上传Release的jar流程
选中3rd party,选择Artifact Upload,GAV Definition下拉选择GAV Parameters,录入jar包的相关信息

选中需要上传的jar包,Filename和Extension系统会自动解析

然后点击Add Artifact按钮,Artifacts框中会加载此jar包,点击Upload Artifact(s)按钮进行上传

然后可以根据地址进行访问查看
8.上传snapshots快照jar
在cmd命令行使用maven进行上传,设置jar包的路径,需要上传到的服务器地址,jar的groupid、artifactId、version、packaging等信息
mvn deploy:deploy-file -DgroupId=com.platform.framework -DartifactId=framework -Dversion=1.1.5-SNAPSHOT -Dpackaging=jar -Dfile=E:\repository\wfw\com\platform\framework\framework\1.1.5-SNAPSHOT\framework-1.1.5-SNAPSHOT.jar -Durl=http://127.0.0.1:8081/nexus/content/repositories/snapshots -DrepositoryId=snapshots

通过地址进行查看
页面也可以查看

在执行上传时可能会出现401的错误,这是由于setting.xml中的用户名密码配置不对

9.项目中引用本地私服
pom.xml中进行设置
<!-- 如有Nexus私服, 取消注释并指向正确的服务器地址 --> <pluginRepositories> <pluginRepository> <id>nexus</id> <name>Team Nexus Repository</name> <url>http://127.0.0.1:8081/nexus/content/groups/public/</url> <snapshots> <enabled>true</enabled> </snapshots> </pluginRepository> </pluginRepositories>
<!-- git仓库包 --> <dependency> <groupId>com.platform.framework</groupId> <artifactId>framework</artifactId> <version>1.1.5-SNAPSHOT</version> </dependency>
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/232245.html原文链接:https://javaforall.net
