Maven常用命令以及Nexus私服配置

来源:互联网 发布:以太网是什么网络 编辑:程序博客网 时间:2024/05/18 03:53

Maven常用命令:

            mvn    clean:            清理(删除target目录下编译内容)

            mvn    compile        编译项目

            mvn    test                运行测试

            mvn    install            安装当前工程的输出文件到本地仓库

            mvn    package       打包

            mvn    deploy           发布目录到私服仓库

            mvn    site                 生成站点目录

            mvn    war/jar           打成jar/war包

私服配置:

Nexus私服安装

 

第一步:下载nexus-webapp-1.9.2.4.war包,然后拷贝到tomcat下的webapps目录中

第二步:启动tomcat

第三步:访问http://localhost:8080/nexus/显示如下:

 

第四步:点击右上角“log in”   ,输入username:admin 和Password:admin123登录


 

 

 

第五步:登录成功


第六步:点击Views/Repositories 中Repositories

 

Nexus内置仓库说明:

(1)Maven Central:该仓库代理Maven中央仓库,其策略为Release,因此只会下载和缓存中央仓库中的发布版本构件。

(2)Releases:这是一种策略为Release的宿主类型仓库,用来部署组织内部的发布版本构件。

(3)Snapshots:这是一个策略为Snapshot的宿主类型仓库,用来部署组织内部的快照版本构件。

(4)3rd party:这是一个策略为Release的宿主类型仓库,用来部署无法从公共仓库获得的第三方发布版本构件。

(5)Public Repositories:该仓库组将上述所有策略为Release的仓库聚合并通过一致的地址提供服务。

第七步:创建宿主目录和代理仓库

·        Hosted:本地仓库,通常我们会部署自己的构件到这一类型的仓库。

o   包括3rd party仓库,Releases仓库,Snapshots仓库

·        Proxy:代理仓库,它们被用来代理远程的公共仓库,如maven中央仓库。

·        Group:仓库组,用来合并多个hosted/proxy仓库,通常我们配置maven依赖仓库组。

第八步:创建仓库组

         点击Public Repositories仓库,在Configurations栏中选取需要合并的仓库,点击箭头加到左边保存即可

 

第九步:下载Index索引并进行构建搜索(GAV搜索)

配置文件和顺序:MAVEN_HOME/conf/setting.xml-à~/.m2/setting.xml-àproject

第十步:配置所有构件均从私服下载,在~/.m2/setting.xml中配置如下:

<settings>

 <mirrors>

          <mirror>

                   <!--此处配置所有的构建均从私有仓库中下载 *代表所有,也可以写central -->

                   <id>nexus</id>

                   <mirrorOf>*</mirrorOf>

                   <url>http://192.168.1.100:8000/nexus/content/groups/public</url>

          </mirror>

 </mirrors>

 <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>

<activeProfiles>

 <!--make the profile active all the time-->

 <activeProfile>nexus</activeProfile>

 </activeProfiles>

 

 

第十一步:部署构建到Nexus,包含Release和Snapshot, 在项目根目录中pom.xml中配置:

<distributionManagement>

         <repository>

            <id>releases</id>

            <name>Internal Releases</name>

             <url>http://localhost:8000/nexus/content/repositories/releases/</url>

         </repository>

         <snapshotRepository>

             <id>snapshots</id>

            <name>Internal Snapshots</name>

            <url>http://localhost:8000/nexus/content/repositories/snapshots/</url>

         </snapshotRepository>

  </distributionManagement>

第十二步:Nexus的访问权限控制,在~/m2/setting.xml中配置如下:

<!-- 设置发布时的用户名 -->

 <servers>

        <server>

                 <id> releases </id>

<username>admin</username>

<password>admin123</password>

</server>

<server>

<id> snapshots </id>

<username>admin</username>

<password>admin123</password>

 </server>

 </servers>