Maven 初识

来源:互联网 发布:java汽车租赁 编辑:程序博客网 时间:2024/06/06 05:41

Maven中的主要参数解析如下:

  groupId: 代表组织和整个项目的唯一标志。比如说所有的Maven组件的groupId都是org.apache.maven。
  artifactId: 具体项目的名称,它于groupId共同确定一个项目在maven repo中的位置,例如,groupId=org.codehaus.mojo, artifactId=my-project的项目,在maven repo中的位置为:$M2_REPO/org/codehaus/mojo/my-project
  version: 用于说明目前项目的版本,在引用依赖的时候确定具体依赖的版本号。
  packaging: 规定项目的输出格式,包括jar、war、pom、apk等,根据实际需要确定。例如,开发一般的java库,可以使用jar packaging;开发android则是apk packaging。
  一般来说,Maven肯定要用到pom文件,全名叫Project Object Model。简单的说,就是这个pom.xml文件含有project的相关信息
--------------------------------------------------
mvn archetype:generate  :反向生成maven项目骨架
mvn archetype:generate -DgroupId=heheda -DartifactId=maven-q  
这个是创建一个名为maven-q的jar项目(默认为jar),archetype都是默认的(我自己人为的默认为:maven-archetype-quickstart) 
这个需要与用户交互一路点enter就可以了,其中会让你选择一个架构类型,提供了七种,默认为quickstart也就是第七种
---------------------------------------------------
mvn archetype:generate -DgroupId=com.mycompany.helloworld -DartifactId=helloworld -Dpackage=com.mycompany.helloworld -Dversion=1.0-SNAPSHOT -DarchetypeCatalog=internal
  这个命令是直接生成项目的一个指令:
  archetypeGroupId:指的是原型唯一的标识archetypeArtifactId:原型的名字。
  interactiveMode:交互模式,默认为true。我上面的cmd命令是一次性把该输入的都输入进去了,免去了交互所以是false。如果你选择交互的话,就是有一步一步的选项指引你去选择和填写相关的标识之类的。
----------------------------------------------------
mvn archetype:generate -DgroupId=imooc-loki -DartifactId=spring-mvc-study -DarchetypeArtifactId=maven-archetype-webapp -DarchetypeCatalog=internal

-DarchetypeCatalog=internal: 参数让它不要从远程服务器上取catalog。。
-DarchetypeArtifactId=maven-archetype-webapp :创建一个web项目(package为war的项目)
-DarchetypeArtifactId=maven-archetype-quickstart:创建一个package为jar的项目
----------------------------------------------------

实习时公司给了我当时当时正在做的项目使用eclipse maven clean 和maven install不成功  最好还是用cmd命令  cd到项目目录下

在整个项目下运行
mvn clean    
mvn install -Dmaven.test.skip=true (给任何目标添加maven.test.skip 属性就能跳过测试) mvn install命令将项目放到仓库(Repositories)中这样本地项目就可以使用了
成功之后再在每个子模块下执行  
mvn install -Dmaven.test.skip=true
然后在子模块目录下执行下面命令进行测试(projecttest为项目的test case)
mvn test -Dtest=projecttest

----------------------------------------------------
如何解决每次update maven project 都会把jdk变为1.5 (maven 默认使用jdk1.5导致反省、@override 等annotation不可用)



一种方法也是治标不治本的方法:
<build>        <pluginManagement>            <plugins>                <plugin>                    <groupId>org.apache.maven.plugins</groupId>                    <artifactId>maven-compiler-plugin</artifactId>                    <version>2.5.1</version>                    <configuration>                        <target>1.8</target>                        <source>1.8</source>                        <encoding>UTF-8</encoding>                    </configuration>                </plugin>                </plugins>                </pluginManagement>                </build>



这样每个项目创建时都需要在pom文件中设置这个


第二种:修改maven配置,影响maven建立的所有项目(自己没试过)
到maven安装目录的conf文件夹下,修改settings.xml文件,如下:


<profiles>      <profile>           <id>jdk-1.6</id>             <activation>               <activeByDefault>true</activeByDefault>               <jdk>1.6</jdk>             </activation>             <properties>               <maven.compiler.source>1.8</maven.compiler.source>               <maven.compiler.target>1.8</maven.compiler.target>               <maven.compiler.compilerVersion>1.6</maven.compiler.compilerVersion>             </properties>           </profile>      </profiles>


-------------------------------------------------------

如何容易的创建一个maven项目:

在cmd运行命令  mvn archetype:generate 然后一步一步选择配置就可以了  也可以一路enter  就是默认的配置

-------------------------------------------------------

参考博客:

http://www.trinea.cn/android/maven/


原创粉丝点击