Nexus 是一个强大的仓库管理解决方案,由Sonatype公司开发。它主要用于软件开发中各种依赖包和构件的存储、管理和分发。
1、下载最新版本的nexus 下载地址:http://www.sonatype.org/nexus/go (网站为国外网站,国内下载可能会很慢甚至无法下载,需要下载)
2、 博主已下载好目前最新版本的nexus放置于阿里云盘当中,有需要的小伙伴可通过云盘地址进行下载。 https://www.alipan.com/s/Z42R3FPtEyx 提取码: wp46 点击链接保存
1、解压安装包:nexus-3.64.0-04-mac.tgz (博主下载的OS X的版本)
2、进入解压的目录:nexus-3.64.0-04-mac,里面有两个文件夹:nexus-3.64.0-04 、sonatype-work
Sonatype-work 是在安装 Nexus 后,用于存储其运行时数据和配置信息的工作目录。这个目录不在程序的安装路径下,通常是一个独立的数据存储位置,包含了所有的仓库配置、索引文件、缓存以及日志等重要数据。
进入 nexus-3.64.0-04/bin 运行 ./nexus run
出现 Started Sonatype Nexus OSS 3.64.0-04 则表示运行成功,可打开http://localhost:8081/进行访问
修改默认接口则在nexus-3.64.0-04-mac/nexus-3.64.0-04/etc/nexus-default.properties文件修改application-port,比如修改为 8888
3、配置nexus全局命令运行
vim ~/.bash_profile
export NEXUS_HOME="/Users/pengyangyan/Downloads/nexus-3.64.0-04-mac/nexus-3.64.0-04"
export PATH="$PATH:$NEXUS_HOME/bin:PATH"
source ~/.bash_profile
此时就可以在任意目录运行nexus命令。
注意:mac电脑在解压nexus-3.64.0-04-mac.tgz 时,如果使用第三方解压工具,会造成nexus依赖jar包名称错误同时无法识别出jar包导致nexus无法运行,所以解压的时候最好使用mac自带的解压工具进行解压
4、登陆nexus
点击右上角Sign in 进行登陆 用户名: admin 。运行命令 cat /nexus-3.64.0-04-mac/sonatype-work/nexus3/admin.Password 可查看密码,登陆成功后会提示进行密码修改。
1、点击Create repository 可创建其他类型的仓库,对于Java,里面已经内置了maven相关仓库,所以我这里就没有在进行创建,直接使用里面已有的仓库。
2、配置maven的setting.xml文件如下:
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
http://maven.apache.org/xsd/settings-1.0.0.xsd">
<localRepository>/Users/pengyangyan/.m2/repositorylocalRepository>
<pluginGroups/>
<proxies/>
<servers>
<server>
<id>maven-publicid>
<username>adminusername>
<password>peng123.password>
server>
<server>
<id>maven-snapshotsid>
<username>adminusername>
<password>peng123.password>
server>
<server>
<id>maven-releasesid>
<username>adminusername>
<password>peng123.password>
server>
servers>
<mirrors>
<mirror>
<id>aliyunmavenid>
<mirrorOf>*mirrorOf>
<name>aliyunmavenname>
<url>http://maven.aliyun.com/repository/publicurl>
mirror>
<mirror>
<id>centralid>
<name>Maven Repository Switchboardname>
<url>https://repo1.maven.org/maven2/url>
<mirrorOf>centralmirrorOf>
mirror>
mirrors>
<profiles>
<profile>
<id>allid>
<repositories>
<repository>
<id>alimavenid>
<name>aliyun mavenname>
<url>https://maven.aliyun.com/repository/publicurl>
<releases>
<enabled>trueenabled>
releases>
<snapshots>
<enabled>trueenabled>
snapshots>
repository>
repositories>
<pluginRepositories>
<pluginRepository>
<id>alimavenid>
<name>aliyun mavenname>
<url>https://maven.aliyun.com/repository/publicurl>
pluginRepository>
pluginRepositories>
profile>
<profile>
<id>maven-NEXUSid>
<repositories>
<repository>
<id>maven-publicid>
<name>testname>
<url>http://localhost:8081/repository/maven-public/url>
<releases>
<enabled>trueenabled>
releases>
<snapshots>
<enabled>trueenabled>
snapshots>
repository>
repositories>
profile>
profiles>
settings>
4、项目jar推送至私有仓库
在需要发布的项目pom文件中添加distributionManagement配置,而后使用idea工具右侧的maven栏,点击deploy发布到远程仓库
在父级项目的pom.xml 配置上
<distributionManagement>
<repository>
<id>maven-releasesid>
<name>Release Repositoriesname>
<url>http://localhost:8081/repository/maven-releases/url>
repository>
<snapshotRepository>
<id>maven-snapshotsid>
<name>Snapshot Repositoriesname>
<url>http://localhost:8081/repository/maven-snapshots/url>
snapshotRepository>
distributionManagement>
而后登录到你的nexus私服就能查看部署的jar包
- mvn package
- 作用:完成编译、测试后,根据项目类型(如jar、war、ear等)打包项目。
- mvn install
- 作用:执行
package
之后,还将包安装到本地仓库,使得其他本地项目可以引用此项目作为依赖。- mvn deploy
- 作用:在成功完成
install
的基础上,将最终构建的工件部署到远程仓库,供其他团队成员或项目使用。
看到如图内容表示jar已成功推送到私有仓库。
完结,撒花!!!