访问http://nexus.sonatype.org/downloads/下载Nexus。
启动Nexus,就是启动一个web服务器,它的默认地址是localhost:8081。Nexus在一个名为Jetty的servlet容器中运行,它使用一个名为Tanuki Java Service Wrapper的本地服务包裹器启动。这个服务包裹器可以被配置成以Windows服务或Unix守护线程的形式运行Nexus。要启动Nexus,你需要为你的平台找到合适的启动脚本。要查看可用平台的列表,查看${NEXUS_HOME}/bin/jsw目录的内容。
可执行文件在%nexus安装目录%\nexus-webapp-1.0.0\binjsw\windows-x86-32下:
InstallNexus.bat/UninstallNexus.bat是安装/卸载nexus为windows service。
Nexus.bat是直接在命令行中启动Nexus,如果不想安装Nexus为windows service,可以用这个文件来手工控制Nexus的启动退出。
1.配置nexus
首先登录,默认地址http://localhost:8081/nexus/,默认用户名密码为admin/admin123.
nexus默认是关闭远程索引下载功能的。开启的方式:
点击Administration菜单下面的Repositories,将这三个仓库Apache Snapshots,Codehaus Snapshots,Maven Central的
Download Remote Indexes修改为true。然后在这三个仓库上分别右键,选择Re-index,这样Nexus就会去下载远程的索引文件。
2.管理仓库
以管理员用户登陆然后点击左边导航菜单Administration下面的Repositories。Nexus提供了三种不同的仓库。
(1)代理仓库
一个代理仓库是对远程仓库的一个代理。默认情况下,Nexus自带了如下配置的代理仓库:
Apache Snapshots
这个仓库包含了来自于Apache软件基金会的快照版本。http://people.apache.org/repo/m2-snapshot-repository
Codehaus Snapshots
这个仓库包含了来自于Codehaus的快照版本。 http://snapshots.repository.codehaus.org/
Central Maven Repository
这是中央Maven仓库(发布版本)。 http://repo1.maven.org/maven2/
(2)宿主仓库
一个宿主仓库是由Nexus托管的仓库。Maven自带了如下配置的宿主仓库。
3rd Party
这个宿主仓库应该用来存储在公共Maven仓库中找不到的第三方依赖。这种依赖的样例有:你组织使用的,商业的,私有的类库如Oracle JDBC驱动。
Releases
这个宿主仓库是你组织公布内部发布版本的地方。
Snapshots
这个宿主仓库是你组织发布内部快照版本的地方。
(3)虚拟仓库
一个虚拟仓库作为Maven 1的适配器存在。Nexus自带了一个central-m1虚拟仓库
3. 管理组
组是Nexus一个强大的特性,它允许你在一个单独的URL中组合多个仓库。Nexus自带了两个组:public和public-snapshots。 public组中组合了三个宿主仓库:3rd Party, Releases, 和Snapshots,还有中央Maven仓库。而public-snapshots组中组合了Apache Snapshots和Codehaus Snapshots仓库。
4. 配置maven
要让maven使用Nexus作为仓库,要修改~/.m2/settings.xml.
Xml代码
<profiles>
<profile>
<id>nexus</id>
<repositories>
<repository>
<id>nexus</id>
<name>local private nexus</name>
<url>http://localhost:8081/nexus/content/groups/public</url>
</repository>
</repositories>
</profile>
<profile>
<id>nexus-snapshots</id>
<repositories>
<repository>
<id>nexus-snapshots</id>
<name>local private nexus snapshots</name>
<url>http://localhost:8081/nexus/content/groups/public-snapshots</url>
</repository>
</repositories>
</profile>
</profiles>
<activeProfiles>
<activeProfile>nexus</activeProfile>
<activeProfile>nexus-snapshots</activeProfile>
</activeProfiles>
5.部署构件至Nexus
要部署构件至Nexus,在distributionManagement中提供仓库URL,然后运行mvn deploy。Maven会通过一个简单的HTTP PUT将项目POM和构件推入至你的Nexus安装。需要配置你项目POM中distributionManagement部分的repository。
Xml代码
<distributionManagement>
<repository>
<id>releases</id>
<name>Internal Releases</name>
<url>http://localhost:8081/nexus/content/repositories/releases</url>
</repository>
<snapshotRepository>
<id>Snapshots</id>
<name>Internal Snapshots</name>
<url>http://localhost:8081/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
这样还没完,这时如果部署会报错,还要在~/.m2/settings.xml中添加如下的服务器登录信息:
Xml代码
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>Snapshots</id>
<username>admin</username>
<password>admin123</password>
</server>
部署第三方构件:
构件可能是私有数据库的JDBC驱动如Oracle,或者你依赖于另一个JAR,它既不开源也无法免费获得。在这样的情况下,你就需要手动拿来这些构件然后发布到你自己的仓库中。Nexus提供宿主的"third-party"仓库,就是为了这个目的。
使用以下命令发布该文件至Nexus:
Java代码
mvn deploy:deploy-file -DgroupId=com.oracle -DartifactId=ojdbc14
-Dversion=10.2.0.3.0 -Dpackaging=jar -Dfile=ojdbc.jar
-Durl=http://localhost:8081/nexus/content/repositories/thirdparty
-DrepositoryId=thirdparty
6.Nexus监听端口
默认情况下,Nexus监听端口8081。你可以更改这个端口,通过更改${NEXUS_HOME}/conf/plexus.properties的值,为此,停止Nexus,更改文件中applicationPort的值,然后重启Nexus。
7.Maven Profiles
Maven中的profile是一组可选的配置,可以用来设置或者覆盖配置默认值。有了profile,你就可以为不同的环境定制构建。profile可以在pom.xml中配置,并给定一个id。然后你就可以在运行Maven的时候使用的命令行标记告诉Maven运行特定profile中的目标。以下 pom.xml使用production profile覆盖了默认的Compiler插件设置。
Xml代码
<profiles>
<profile>
<id>production</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<debug>false</debug>
<optimize>true</optimize>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
要使用production profile来运行mvn install,你需要在命令行传入-Pproduction参数。要验证production profile覆盖了默认的Compiler插件配置,可以像这样以开启调试输出(-X) 的方式运行Maven。
如果你开始大量使用Maven profile,你会希望将profile从POM中分离,使用一个单独的文件如profiles.xml。你可以混合使用定义在pom.xml中和外部 profiles.xml文件中的profile。只需要将profiles元素放到${basedir}目录下的profiles.xml文件中,然后照常运行Maven就可以。profiles.xml文件的大概内容如下:
Xml代码
<profiles>
<profile>
<id>development</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<debug>true</debug>
<optimize>false</optimize>
</configuration>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>production</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<debug>false</debug>
<optimize>true</optimize>
</configuration>
</plugin>
</plugins>
</build>
</profile>
</profiles>
settings profile可以应用到所有你使用Maven构建的项目。你可以在两个地方定义settings profile:定义在~/.m2/settings.xml中的用户特定settings profile,或者定义在${M2_HOME}/conf/settings.xml中的全局settings profile。
- 浏览: 55527 次
- 性别:
- 来自: 南京
文章分类
- 全部博客 (87)
- 开发工具 (10)
- linux (11)
- linux nginx (3)
- 搭建 (1)
- java (14)
- mybatis (7)
- mysql c3p0 (1)
- mysql (12)
- json jackjson (1)
- java aop (1)
- linux mysql (1)
- nginx tomcat mem (2)
- linux 内存 (2)
- windows rtx (1)
- jira (1)
- tomcat (2)
- 分词 (1)
- spring MVC (2)
- spring MVC log4j (1)
- linux yum (0)
- mem (0)
- zookeeper (2)
- dubbo (3)
- mybtis eclipse (1)
- schema (0)
- redis (0)
- redis spring (1)
- redis 集群 (0)
- ruby (1)
- spring redis (0)
- jenkins scp (1)
- activemq spring (0)
- ServiceLoader (0)
- spring (0)
- spring ioc (0)
- thread (5)
- thred (0)
- jdk (2)
- js 日期使用 (1)
- maven (0)
- windows (0)
最新评论
发表评论
-
并发控制
2017-11-10 09:59 0线上报Data source rejected establ ... -
linux下安装jdk
2015-05-04 14:22 372判断一下是否安装java了 直接命令java -versi ... -
Calendar清空时间
2014-08-23 17:08 1310/** * 获取当前月的第一天,无小时 * * ... -
eclipse格式化java和xml文件
2014-08-23 16:57 556java 打开Eclipse的Window菜单,然后Pr ... -
jenkins maven svn
2014-06-26 20:39 639项目在开发前期的时候,由于需求的不明确,导致快速的迭代版本, ... -
瞎弄着玩
2014-03-25 10:38 336Eclipse背景颜色修改: 操作界面默认颜色为白色。对于我 ... -
yum 命令下载文件存放位置
2014-03-12 14:59 938在使用centos系统时候,我们一般都使用yum命令来安装或 ... -
hg windows系统下面搭建
2014-03-12 13:08 539首先下载合适的,http://tortoisehg.bit ... -
ubuntu系统使用ssh链接
2013-11-13 10:27 675ubuntu系统不自带ssh的,必须要自己去安装 先 ... -
myeclipse远程调试
2013-10-31 11:25 598最近项目做大量的接口 ...
相关推荐
**Nexus Maven 私服搭建详解** 在软件开发过程中,Maven 是一款广泛使用的构建工具,它通过依赖管理简化了项目构建。然而,随着项目的增多,依赖库的规模也会不断增大,直接使用中央仓库可能会导致下载速度慢、网络...
### Nexus Maven内部库配置安装手册知识点 #### 一、Nexus Maven仓库管理器介绍 - **产品背景**:Nexus是由Sonatype推出的一款强大的Maven仓库管理器产品,旨在帮助企业更好地管理和分发Java项目的依赖项。 - **...
### Android 搭建自己的Nexus Maven服务器 #### 一、Nexus搭建过程 Nexus是一款非常优秀的开源软件仓库管理工具,它可以帮助开发者们更好地管理自己项目中的依赖库。为了搭建一个Nexus Maven服务器,首先需要下载...
在Ubuntu16.04平台搭建maven私有服务器,包括私服的配置和在项目中私有仓库引入和使用。 Maven可以通过一小段描述信息来管理项目的构建,报告和文档的项目管理工具软件。...Nexus 是一个强大的仓库管理器。
### 搭建 Nexus Maven 私服详解 #### 一、前言 随着软件开发项目的规模不断扩大和技术迭代加速,依赖管理成为了项目管理中的一个重要环节。Maven 作为 Java 领域内广受欢迎的构建管理和依赖管理系统,其依赖管理...
nexus 搭建 maven仓库nexus 搭建 maven仓库nexus 搭建 maven仓库nexus 搭建 maven仓库nexus 搭建 maven仓库
Maven仓库管理-Nexus Maven仓库管理是Maven的核心概念之一,它解决了使用 Ant 时期的 jar 包管理问题。Maven 仓库的初衷是为了解决版本管理的问题,通过 Group Id, Artifact Id, version 来管理 jar 包,实现了依赖...
Nexus主要用于管理和分发Java相关的组件,如Maven的依赖库,但它也支持npm、NuGet、RubyGems等多种软件包格式。此版本3.18.0-01是针对Windows操作系统设计的64位版本。 描述中提到的“nexus3.18版本,win使用的版本...
【Android Gradle 插件】将自定义 Gradle 插件上传到自建 Maven 仓库 ⑤ ( 使用 Sonatype Nexus 搭建 Maven 仓库 ) https://hanshuliang.blog.csdn.net/article/details/127385094 博客资源
Nexus是一个强大的 Maven、NPM、Gradle等构建工具的代理服务器和仓库管理器,它可以帮助我们更高效地管理和分发软件组件。 首先,我们需要理解Nexus的基本概念。Nexus主要有三种仓库类型:proxy、hosted和group。...
nexus-2.14.5-02-bundle.zip nexus-3.19.1-01-unix.tar.gz nexus-3.19.1-01-win64.zip 包含以上三种安装包,需要可自行下载。
### Windows 下 Nexus 搭建 Maven 私服详解 #### 一、为什么使用 Nexus 在软件开发过程中,尤其是采用 Maven 构建管理的项目中,依赖管理是非常关键的一环。通常,开发人员需要从 Maven 中央仓库下载各种依赖库到...
本教程将指导您在Linux环境下,利用Nexus 3.14和Maven 3.6.3快速搭建Maven私服。 首先,我们来看看所需的主要组件: 1. **Nexus 3.14**:这是Sonatype公司提供的开源仓库管理工具,它可以作为Maven私服,支持多种...
### Maven+Nexus 完整手册 #### 一、Nexus 安装与启动 Nexus 是一款由 Sonatype 提供的开源组件管理平台,能够帮助开发者有效地管理项目的依赖关系。安装 Nexus 的步骤主要包括: 1. **下载 Nexus**:访问官方...
标题《Maven与Nexus配置.pdf》指向的是关于如何配置和使用Maven与Nexus的指南。Maven是一个项目管理和自动构建工具,它主要服务于基于Java的项目,帮助处理项目构建、文档生成、报告、依赖管理和项目信息等。Nexus是...
【Nexus Maven仓库管理器详解】 Nexus是Sonatype公司推出的一款开源的Maven仓库管理器,它在软件开发过程中扮演着重要的角色,特别是在Java生态系统中。Maven私服,即私有的Maven仓库,可以用来存储和管理项目依赖...
Maven Nexus 私服搭建 从零开始,资源下载、安装指导、开发配置说明