访问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。
分享到:
相关推荐
maven nexus 配置,简要介绍如何配置nexus。。。。。。
Maven Nexus 私服搭建 从零开始,资源下载、安装指导、开发配置说明
** Maven Nexus 概述 ** Maven Nexus 是一个强大的 Maven 库管理工具,它提供了对 Maven 仓库的全面管理和控制。Nexus 不仅可以作为本地仓库代理,...正确安装并配置 Maven Nexus,能够为企业构建流程带来极大的便利。
标题《Maven与Nexus配置.pdf》指向的是关于如何配置和使用Maven与Nexus的指南。Maven是一个项目管理和自动构建工具,它主要服务于基于Java的项目,帮助处理项目构建、文档生成、报告、依赖管理和项目信息等。Nexus是...
通过这个示例,开发者可以学习到如何配置Maven的settings.xml以使用Nexus,如何在pom.xml中指定构件的部署目标,以及如何在开发流程中有效地利用Nexus管理依赖。此外,Nexus还提供了高级功能,如版本控制、权限管理...
本文详细介绍了如何搭建 Maven 私服并配置 Nexus,包括 Nexus 的安装、启动、配置及管理等步骤。通过这些操作,开发者可以更好地管理项目的依赖,提高开发效率。同时,通过合理配置 Maven,可以确保项目顺利引用 ...
标题"Maven3.8.3+nexus3.34.zip"和描述中提及的是一个包含Maven 3.8.3版本和Nexus 3.34版本的压缩包文件,适用于Windows 64位操作系统。这两个工具在软件开发,尤其是Java开发中扮演着重要角色。以下是关于Maven和...
史上最全的maven setting配置,包括私服nexus,maven.aliyun.com,repo.maven.apache.org
总之,Nexus是一个功能强大的Maven仓库管理工具,通过合理配置和使用,可以有效地管理私有和公共的Maven构件,提高开发效率,降低带宽消耗,并加强安全管控。对于任何使用Maven进行项目构建和依赖管理的团队,配置和...
2. **配置 Maven**: 在 Maven 的 `settings.xml` 文件中,添加 Nexus 仓库的配置,以便 Maven 在构建时使用。 3. **发布构件**: 通过 Nexus 的 REST API 或者界面,可以发布构件到仓库,包括发布版本和 SNAPSHOT ...
3. **配置Maven settings.xml**:为了让Maven知道如何从Nexus获取依赖,需要在本地`settings.xml`文件中配置镜像和代理仓库信息。 4. **使用Nexus集团仓库**:集团仓库可以将多个仓库聚合在一起,方便Maven统一查找...
### Nexus Maven内部库配置安装手册知识点 #### 一、Nexus Maven仓库管理器介绍 - **产品背景**:Nexus是由Sonatype推出的一款强大的Maven仓库管理器产品,旨在帮助企业更好地管理和分发Java项目的依赖项。 - **...
- **settings.xml**:在Maven的用户目录`.m2/settings.xml`下配置Nexus的服务器ID、URL和认证信息。 - **仓库配置**:添加或修改`<repositories>`和`<pluginRepositories>`配置,指向Nexus的代理仓库。 - **部署...
本文将详细介绍如何搭建和配置Maven Nexus私服。 #### 二、环境准备 在搭建Nexus私服之前,我们需要确保以下环境已就绪: - **JDK**:版本需大于1.6,因为Nexus 2.0.6以上的版本要求JDK版本至少为1.6。 - **Maven...
在Maven的`settings.xml`文件中,配置Nexus仓库。一般我们会配置一个远程仓库(proxy)用于获取外部依赖,一个宿主仓库(hosted)用于存储我们的内部构件。例如: ```xml <id>nexus <name>Nexus Public ...
通过学习"Maven+nexus学习帮助"中的资料,你将能够熟练掌握Maven的使用,理解POM.xml和Setting.xml的配置,以及如何利用Nexus提升项目管理效率。这些技能对于任何Java开发者来说都是必不可少的。在实践中不断探索和...