Maven使用入门整理

说明:本篇博客只介绍配置安装方法,不介绍理论(可以百度)

下载安装配置部分
1.maven下载安装配置:参照http://blog.csdn.net/happyteafriends/article/details/7449642

2.maven和myeclipse集成:参考http://blog.csdn.net/flanet/article/details/8049954

3.nexus下载安装:参考http://blog.csdn.net/jiushuai/article/details/7962335
(注意点:http://nexus.sonatype.org/downloads/ 里面选择Nexus OOS(免费版)这里写图片描述
在这里我win7下载zip版本没运行成功于是就下了TGZ版本,解压到目录配置好环境变量之后命令行敲nexus正常,如果出现敲nexus install出现“wrapper | OpenSCManager failed - 拒绝访问。 (0x5) ”错误的话参考:http://blog.csdn.net/longxia1987/article/details/8902830博客,成功之后敲http://localhost:8081/nexus,能正常显示则完成。)

maven配置部分

1.在maven中的settings.xml文件中设置你本地仓库的位置(在49行的样子)

  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ~/.m2/repository
  <localRepository>/path/to/local/repo</localRepository>
  -->
  <!-- maven本地工厂位置  -->
  <localRepository>D:\maven-3.0.4\repository</localRepository>

2.配置团队局域网仓库
在maven中的settings.xml文件中,270行的样子,在profiles便签内添加

<!-- 局域网仓库访问地址 -->
<profile>
    <id>nexusRepoFile</id>
        <repositories>
            <repository>
            <id>nexus</id>
            <name>nexus Repository</name>
            <url>http://localhost:8081/nexus/content/groups/public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>       
     </repositories>
  </profile>

然后激活,在maven中的settings.xml文件中290行的样子

    <activeProfiles>
        <!-- 激活 -->
            <activeProfile>nexusRepoFile</activeProfile>
     </activeProfiles>

让一个开发组的成员只能通过局域网仓库下载文件,局域网不存在则不会再去maven官网仓库去下载,从而避免个人再去官网下载(速度很慢),还需要配置镜像仓库(170行的样子)。

<mirrors>标签中设置

  <!-- 使用镜像之后,只要通过建立的仓库才能连接maven官方的仓库,
     而本地仓库只能访问建立的仓库 -->

     <mirror>
      <id>nexus</id>
      <mirrorOf>*</mirrorOf>
      <name>Human Readable Name for this Mirror.</name>
      <url>http://localhost:8081/nexus/content/groups/public/</url>
    </mirror>

3.配置发布权限以及发布仓库(不然maven命令deploy不能执行)。

在maven项目的dom.xml文件中如下配置

    <distributionManagement>
    <!-- release版本仓库发布地址 -->
        <repository>
            <id>user-release</id>
            <name>user release resp</name>
            <url>http://localhost:8081/nexus/content/repositories/releases/</url>
        </repository>
    <!-- snapshot版本仓库发布地址 -->
        <snapshotRepository>
            <id>user-snapshot</id>
            <name>user snapshot resp</name>
            <url>http://localhost:8081/nexus/content/repositories/cms-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

在maven中的settings.xml文件中(120行的样子)如下设置:

<!-- release版本仓库 -->
    <server>
      <id>user-release</id>
      <username>deployment</username>
      <password>deployment123</password>
    </server>
<!-- snapshot版本仓库 -->
    <server>
      <id>user-snapshot</id>
      <username>deployment</username>
      <password>deployment123</password>
    </server>

4.如果想要为一个大项目组再细分每一个模块并分配相应的仓库的话,需要在http://localhost:8081/nexus中add新的仓库然后依次执行
这里写图片描述下的Priviledge–>Roles–>Users完成添加新的仓库,并设置相应的权限和用户组。(详细流程百度,但不常用)。
添加并设置后如下图所示
这里写图片描述

在maven项目的dom.xml文件中如下配置:


<snapshotRepository>
            <id>user-snapshot</id>
            <name>user snapshot resp</name>
            <url>http://localhost:8081/nexus/content/repositories/cms-snapshots/</url>
        </snapshotRepository>

相应的在maven中的settings.xml文件中(还是在120行的样子)如下设置:

 <server>
      <id>user-release</id>
      <username>deployment</username>
      <password>deployment123</password>
    </server>
    <server>
      <id>user-snapshot</id>
     <!-- <username>deployment</username>
      <password>deployment123</password>
      -->
       <username>cms</username>
      <password>cms123</password>
    </server>

在maven项目中右键pom.xml 使用“clean deploy”命令,测试。

补充说明部分:
1:需要运行测试项目的时候选中你的pom.xml文件,右键属性选择
run as–>选择 “Maven Builder. .”–>在Goals中填clean test(常用)。回车运行—OK

2:需要打包的时候选中你的pom.xml文件,右键属性选择
run as–>选择 “Maven Builder. .”–>在Goals中填clean package。回车运行—OK

3:需要放入本地仓库的时候选中你的pom.xml文件,右键属性选择
run as–>选择 “Maven Builder. .”–>在Goals中填clean install。回车运行—OK

————————————
小结:
A:整体
0.Maven项目的一般构成

src
--main
----java
------package
----resources
--test
----java
------package
----resources
--target-->bin(编译好的二进制文件)
-pom.xml

隐藏变量

这里写图片描述

1.操作的都是dom.xml文件,使用这个文件操作项目。
2.compile命令:编译你的项目 生成二进制放到target目录中。
3.test命令:编译你的测试类生成二进制到target目录中。
4.clean命令:清空tagrget目录中之前生成的编译内容。
5.package命令:可以把文件打包。
6.install命令:将编译好的东西安装到本地仓库中。
7.deploy命令:发布war包或者jar包或者各种包到仓库中。

B:关键功能
pom.xml文件中
1.groupId–>项目的名称(一个项目多个模块)。
2.artifactId–>项目组某一个模块。
3.version–>0.0.1-SNAPSHOT
释义:大版本上的变动(架构上的调整).分支上的变化.分支里面多少次跟新-(SNAPSHOT:快照版/alpha:项目组内部测试版本/beta:使用者用/Release(RC):释放版本/GA:可靠版本)

4.依赖(jar包配置即可导入)

<dependencies><dependency><dependency></dependencies>

5.聚合:使用一个pom.xml管理多个子项目的编译,测试,打包,安装。并且聚合指的是模块的*位置*。如下所示

<modules>
    <module>../syj-action</module>
    <module>../syj-service</module>
    <module>../syj-dataSource</module>
</modules>

6.继承:主要用来将公共的jar包和版本号集中管理。并且在父类中<packaging>pom</packaging>必须写pom。子类引用的时候需要加入

......
<parent>
<groupId>syj-system</groupId>
<artifactId>syj-parent</artifactId>
<version>0.0.1-SNAPSHOT</version>
<relativePath>../syj-parent/pom.xml</relativePath>
</parent>
<artifactId>syj-service</artifactId>
<package>jar</package>
<name>syj-service</name>
......

模块,其中绝对路径是父类的pom的*文件*

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值