使用Nexus搭建Maven私服(二)

来源:互联网 发布:网络医疗美容咨询 编辑:程序博客网 时间:2024/05/16 12:56

Nexus私服搭建完成以后,接下来要做的就是在Maven项目中使用搭建的私服。

单项目配置使用私服

如果单个的项目需要配置为使用Nexus私服,那么需要配置的文件就是该Maven项目的pom.xml。
在项目的pom.xml中增加如下配置即可(作为project根节点的子进行配置):

<repositories>    <repository>      <id>nexus</id>      <name>Nexus</name>      <url>http://192.168.***.***:****/nexus/content/groups/public/</url>      <releases>        <enabled>true</enabled>      </releases>      <snapshots>        <enabled>true</enabled>      </snapshots>    </repository>  </repositories>  <pluginRepositories>    <pluginRepository>      <id>nexus</id>      <name>Nexus</name>      <url>http://192.168.***.***:****/nexus/content/groups/public/</url>      <releases>        <enabled>true</enabled>      </releases>      <snapshots>        <enabled>true</enabled>      </snapshots>    </pluginRepository>  </pluginRepositories>

全部项目配置使用私服

如果希望本机所有的项目都使用所搭建的Nexus私服,那么需要修改Maven的配置文件settings.xml。
找到Maven本地仓库下的settings.xml文件,作如下配置(对应IP和端口自行修改):

  • 配置profiles节点;
<profiles>    <profile>        <id>nexus</id>        <repositories>            <repository>                <id>nexus</id>                <name>Nexus</name>                <url>http://192.168.***.***:****/nexus/content/groups/public/</url>                <releases>                    <enabled>true</enabled>                </releases>                <snapshots>                    <enabled>true</enabled>                </snapshots>            </repository>        </repositories>        <pluginRepositories>            <pluginRepository>                <id>nexus</id>                <name>Nexus</name>                <url>http://192.168.***.***:****/nexus/content/groups/public/</url>                <releases>                    <enabled>true</enabled>                </releases>                <snapshots>                    <enabled>true</enabled>                </snapshots>            </pluginRepository>        </pluginRepositories>    </profile>  </profiles>
  • 配置activeProfiles节点;
<activeProfiles>      <activeProfile>nexus</activeProfile>  </activeProfiles>

Nexus私服完全接管构件下载请求

在做了如上的配置修改之后,目前本机的所有项目都会使用Nexus私服。但是现在Maven还是有时从Nexus下载构件,有时从中央仓库下载构件。如果要让Nexus私服全面接管构件下载(Nexus统一管理所有下载的构件,可以对项目组内部提速),需要做如下的配置修改。
修改的是Maven的settings.xml文件。

  • 配置mirros镜像节点;
<mirrors>    <mirror>        <id>nexus</id>        <mirrorOf>*</mirrorOf>        <name>Nexus</name>        <url>http://192.168.***.***:****/nexus/content/groups/public</url>    </mirror>  </mirrors>
  • 配置profiles节点;
<profiles>    <profile>        <id>nexus</id>        <repositories>            <repository>                <id>central</id>                <url>http://central</url>                <releases>                    <enabled>true</enabled>                </releases>                <snapshots>                    <enabled>true</enabled>                </snapshots>            </repository>        </repositories>        <pluginRepositories>            <pluginRepository>                <id>central</id>                <url>http://central</url>                <releases>                    <enabled>true</enabled>                </releases>                <snapshots>                    <enabled>true</enabled>                </snapshots>            </pluginRepository>        </pluginRepositories>    </profile>  </profiles>

由于仓库及插件仓库配置的id都是central,所以会覆盖超级POM中央仓库的配置,它们的url已经无关紧要,因为所有请求都会通过镜像访问私服的地址。

enjoy!

原创粉丝点击