搭建Nexus仓库

  • 下载并安装 Nexus Repository Manager OSS 2.xhttps://www.sonatype.com/download-oss-sonatype
  • 启动Nexus服务以管理员身份运行 ${安装目录}\nexus-2.14.4-03\bin\jsw\windows-x86-64\install-nexus.bat ${安装目录}\nexus-2.14.4-03\bin\jsw\windows-x86-64\start-nexus.bat
  • 访问Nexus服务通过http://localhost:8081/nexus/访问nexus首页。默认的登录账号密码为amdin/admin123。

Nexus仓库介绍

搭建好nexus仓库后,点击左侧栏链接 Repositories,可以查看nexus仓库,如下图所示。

nexus3搭建npm私有仓库 视频 linux 配置nexus仓库_pom

nexus管理了多个仓库,其中3rd party,Releases,Snapshots都是托管仓库,可以上传构件(artifacts)。3rd party用于维护不存在于公共仓库中的第三方构件,Releases用于维护稳定版构件,Snapshots用于维护开发版构件。

当在pom.xml文件中声明version为xxx-SNAPSHOT,则构件被认为是Snapshot版本,否则被认为是Release版本。当项目依赖一个Release版本的构件,这个构件只从远程仓库下载一次,之后不再更新。如果构件需要更新,则需要用新的版本号发布一次,假设原来的版本是test1.0,新发布的版本可以是test1.1,依赖方通过修改依赖的版本来更新。一个构件如果需要频繁的修改,就不适合用Release版本发布,而应该采用Snapshot版本。Snaphost版本的构件可以用同一个版本号发布多次,当项目依赖一个Snapshot版本的构件,每次build项目时都会获取最新发布的构件。

关于Snapshots更详细的知识,请参考Maven - Snapshots

新建maven项目

打开eclipse File->New->Project… 选择 Maven Project。 在New Maven Project面板中,勾选Create a simple project,进入下一步。 输入Group Id:com.test,Artifact Id:testapp,完成。

eclipse中配置maven环境

Window->Preferences。

在Preferences面板中,左侧栏选择Maven->User Settings,右侧栏User Settings中选择你的settings.xml。

settings.xml为maven的全局配置文件。我这里选的同一个位置,防止混乱。

nexus3搭建npm私有仓库 视频 linux 配置nexus仓库_pom_02

部署maven项目

  • pom.xml配置仓库信息,如下图
<distributionManagement>
		<snapshotRepository>
			<id>maven-intradak-snapshot</id>
			<name>maven-intradak-snapshot</name>
			<url>http://192.168.1.65:8081/nexus/content/repositories/snapshots/</url>
			<uniqueVersion>true</uniqueVersion>
		</snapshotRepository>
		<repository>
			<id>maven-intradak-release</id>
			<name>maven-intradak-release</name>
			<url>http://192.168.1.65:8081/nexus/content/repositories/releases/</url>
		</repository>
	</distributionManagement>

如果构件是Release版本,则使用配置发布。如果是Snapshot版本,则使用配置发布,如果没有配置,则Snapshot版本的构件也会通过配置发布。

  • settings.xml配置仓库安全信息,具体配置可以下载我配置好的文件 settings.xml。
<servers>
    <server>
      <id>maven-intradak-snapshot</id>
      <username>admin</username>
      <password>admin123</password>
    </server>
    <server>
      <id>maven-intradak-release</id>
      <username>admin</username>
      <password>admin123</password>
    </server> 
  </servers>

server可以配置多个,每个server id必须唯一。这里的server id需要和pom.xml中的repository id或者snapshotRepository id对应。

  • 在eclipse中部署项目在Package Explorer面板中选择项目。 右键,在弹出的菜单中选择Run As->Maven Build…。 在Goals栏输入clean deploy -X,运行。如下图:
  • nexus3搭建npm私有仓库 视频 linux 配置nexus仓库_nexus_03

  • 看到控制台输出以下内容,证明在上传jar 包到 nexus 私服,
  • nexus3搭建npm私有仓库 视频 linux 配置nexus仓库_nexus_04

  • 然后登录 nexus 仓库管理页面,搜索刚刚打包的项目,看到下图:
  • nexus3搭建npm私有仓库 视频 linux 配置nexus仓库_nexus_05

  • 上传时间为,刚刚deploy 的时间,则证明我们的包 已经成功上传到私服。

完结!撒花!