`

搭建maven私服

阅读更多

通过nexus搭建私服,不仅可以代理远程的仓库,而且能够帮助我们管理和部署第三方的构件。

 

1. 下载

http://www.sonatype.org/nexus/go/

下载最新的nexus(我的是2.11.2),有两个版本一个是绑定了jetty的,有JRE就可以直接运行

一个是War包,将其发布到Web容器就可以运行。

 

2. 安装

解压

$tar xvzf nexus-xxx-bundle.tar.gz

 

3. 启动

到解压好的nexus目录下

$ ./nexus start

http://localhost:8081/nexus就可以访问,默认管理员账户:admin,密码:admin123

 

4. 修改密码

可以在左侧的菜单栏 Security->Users中,选中admin右键Reset Password重置密码

 

5. 添加用户

同样可以在Security->Users中,Add一个新的user。根据项目需要,添加了新的用户:kobe

并给其设置了权限:

Nexus Deployment Role   //可以在服务器上部署jar包

Repo:All Maven Repositories(Full Control)    //可以管理服务器上的所有Maven仓库

 

6. 仓库配置

nexus默认会建立几个仓库,每个仓库都有类型:

1. Public Repositories 类型是group,它相当于一个仓库集合,可以把其它仓库加入进去组成一个集成仓库

它已经默认包含了Release、Snapshots、3rd party和Central仓库

2. Central 类型是proxy, 它是用来代理maven的中央仓库,也就是当用户下载中央库的包时,会让代理去中央库下载,然后用户再从代理中下载

3. Releases 类型是hosted,是本地仓库,让用户部署Release类型的包,默认是Disable Redeploy表示不允许具有相同的GAV的release包重复部署,可以修改为Allow Redeploy

4. Snapshots 类型是hosted,是本地仓库,让用户部署Snapshots类型的包(也就是版本带.snapshot后缀的),一般表示开发中的包,默认是可以重复部署

5. 3rd Party 类型也是hosted,本地仓库,一般是部署一些从中央仓库下载不到的第三方的jar包

 

7. maven配置

搭建好nexus后,我们需要将maven下载jar包和发布jar包的地址指向我们的私服

 

修改maven的配置文件setting.xml:

 

在根目录下加入或修改以下内容:

 <servers>
	<server>
		<id>nexus-deploy</id>
		<username>kobe</username>
		<password>xxxxxx</password>
	</server>
</servers>

 <mirrors>
	<mirror>
		<id>nexus</id>
		<mirrorOf>*</mirrorOf>
		<name>nexus</name>
		<url>http://nexus服务器IP:8081/nexus/content/groups/public/</url>
	</mirror>
</mirrors>

<profiles>
	<profile>
      <id>nexus</id>
      <repositories> 
        <repository> 
            <id>nexus</id> 
            <name>local private nexus</name> 
            <url>http://nexus服务器IP:8081/nexus/content/groups/public/</url> 
            <releases><enabled>true</enabled><updatePolicy>always</updatePolicy>
            <checksumPolicy>warn</checksumPolicy></releases> 
            <snapshots><enabled>false</enabled></snapshots> 
        </repository>        
      </repositories> 
      <pluginRepositories> 
        <pluginRepository> 
            <id>nexus</id> 
            <name>local private nexus</name> 
            <url>http://nexus服务器IP:8081/nexus/content/groups/public/</url> 
            <releases><enabled>true</enabled><updatePolicy>always</updatePolicy>
            <checksumPolicy>warn</checksumPolicy></releases> 
            <snapshots><enabled>false</enabled></snapshots> 
        </pluginRepository>        
       </pluginRepositories> 
    </profile>
</profile>

  <activeProfiles>
    <activeProfile>nexus</activeProfile>
  </activeProfiles>

 

<mirrors>和<profiles>的配置将Maven私服覆盖central仓库配置,这样maven对仍和仓库的下载请求都转到我们的私服中,如果要启用profile,需要加入<activeProfiles>。

 

 

7. maven部署jar包到私服

上面的配置能够保证我们从私服中去请求下载jar包,但我们需要在私服中部署我们的jar包时,还需要配置。

我们注意到上面XML配置中的<server>标签:

1. 标签中<id>标示了服务器具有唯一性

2. <username>就是nexus中的用户,使用我们之前创建的用户(具有部署、管理所有maven仓库的权限)

3. <password>就是用户对应的密码

部署项目:

如果想要部署jar包到私服上去,我们还需要在项目的pom.xml文件根标签下加入以下配置:

 

 <distributionManagement>
        <repository>
            <id>nexus-deploy</id>
            <name>Nexus Release Repository</name>
            <url>http://nexus服务器ip:8081/nexus/content/repositories/releases/</url>
        </repository>
        <snapshotRepository>
            <id>nexus-deploy</id>
            <name>Nexus Snapshot Repository</name>
            <url>http://nexus服务器ip:8081/nexus/content/repositories/snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

 

注意这里的<id>要和setting.xml文件中<server>的<id>对应。

 

最后在项目下执行 mvn deploy命令就可以将项目上传到私服上去,Release包传到Releases仓库,Snapshot上传到Snapshots仓库。(mvn install 是安装到本地仓库,mvn deploy是部署到服务器仓库)
 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    Windows 下Nexus搭建Maven私服

    ### Windows 下 Nexus 搭建 Maven 私服详解 #### 一、为什么使用 Nexus 在软件开发过程中,尤其是采用 Maven 构建管理的项目中,依赖管理是非常关键的一环。通常,开发人员需要从 Maven 中央仓库下载各种依赖库到...

    Nexus搭建Maven私服 +maven安装步骤

    Nexus 搭建 Maven 私服 + Maven 安装步骤 Nexus 是一个功能强大且灵活的仓库管理工具,能够帮助开发团队更好地管理项目依赖项和构件。通过搭建 Nexus 私服,可以实现项目依赖项的集中管理、加速项目构建和部署、...

    使用Nexus搭建Maven私服

    使用Nexus搭建Maven私服 标题:使用Nexus搭建Maven私服 描述:关于使用Nexus搭建Maven私服的开发文档。 标签:Nexus 搭建Maven 在实际的企业开发中经常会遇到的问题:在进行Maven项目开发时,所需要的构件都是...

    在CentOS7上用Nexus3搭建Maven私服.doc

    在本文中,我们将详细介绍如何在CentOS7操作系统上使用Nexus3搭建Maven私有仓库。首先,确保系统已经安装了Java Development Kit (JDK) 8和Maven3。安装这两个组件的具体步骤可以通过搜索引擎获取。 一、所需环境 ...

    Linux下利用nexus搭建maven私服

    【Linux下利用nexus搭建maven私服】 在Linux环境下,Nexus是一款强大的仓库管理器,可以用来搭建Maven私有仓库。Nexus不仅可以作为一个中央仓库的代理,还支持创建自己的存储库,方便组织内部共享依赖,提高开发...

    基于Nexus搭建Maven私服详解(可用于生产环境)

    提供了基于Nexus搭建Maven私服所需要的一切资源和个人经验,搭建后可maven deploy 上传自己的jar包。别人如何在自己的maven项目中引用我将单独再上传一份。

    搭建maven私服的软件

    接下来,我们开始搭建Maven私服。首先确保你的系统中已经安装了Java环境,因为Maven和Nexus都需要Java支持。然后,下载Nexus的zip文件,可以从Sonatype官方网站获取对应版本。解压下载的文件,将其放置在服务器的...

    linux下搭建内网maven私服

    Linux 下搭建内网 Maven 私服 Maven 私服是 Maven 仓库的私有化版本,允许开发者在企业内部搭建私有的 Maven 仓库,用于存储和管理项目依赖项。在 Linux 环境下搭建内网 Maven 私服,可以提高项目的构建和部署效率...

    手动搭建maven私服-安装配置nexus 3.4教程

    "手动搭建maven私服-安装配置nexus 3.4教程" 手动搭建maven私服是指使用nexus 3.4安装配置一个maven私服,实现公司或个人项目的构件管理。下面将详细介绍手动搭建maven私服的过程。 一、安装nexus 3.4 首先下载...

    搭建Maven私服,并配置Nexus环境

    接下来,我们来详细讲解如何搭建Maven私服并配置Nexus环境。 1. **安装Nexus** 下载Nexus的最新版本,如压缩包文件中的`nexus-latest-bundle.zip`。解压后,找到`bin`目录下的`nexus.exe`(Windows)或`nexus`...

    Nexus搭建Maven私服指导手册

    ### Nexus搭建Maven私服指导手册 #### 一、Nexus使用背景 在现代软件开发过程中,Maven作为构建工具在Java项目中占据了重要的地位。Maven通过定义项目的对象模型(POM),仅需一个简单的命令就能实现构建和依赖...

    linux,nexus3.14+maven3.6.3.zip,搭建maven私服一步到位

    本教程将指导您在Linux环境下,利用Nexus 3.14和Maven 3.6.3快速搭建Maven私服。 首先,我们来看看所需的主要组件: 1. **Nexus 3.14**:这是Sonatype公司提供的开源仓库管理工具,它可以作为Maven私服,支持多种...

    nexus搭建maven私服1

    搭建 Maven 私服是软件开发过程中非常重要的一步,它能够帮助团队高效地管理和分发内部依赖,减少对外部中央仓库的依赖。Nexus 是 Sonatype 公司提供的一款开源工具,用于构建私有的 Maven 仓库。以下是使用 Nexus ...

    nexus3搭建maven 私服资源

    本篇文章将详细介绍如何使用Nexus 3搭建Maven私服资源。 首先,我们来了解Nexus 3的核心功能。Nexus 3提供了以下关键特性: 1. **仓库管理**:支持Maven、npm、Gradle等多种格式的仓库,方便不同类型的项目管理。 ...

    Maven Nexus 私服搭建

    Maven Nexus 私服搭建 从零开始,资源下载、安装指导、开发配置说明

Global site tag (gtag.js) - Google Analytics