您的位置:首页 > 其它

第一个maven构建

2015-06-11 20:20 441 查看

1.创建简单项目maven_test

1.1 使用archetype:create或archetype:generate插件生成简单项目

命令如下:mvn archetype:create -DartifactId=maven_test -DgroupId=com.mastery -DpackageName=com.mastery -Dversion=1.0 -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveModel=false

若是该命令报错,则可能你安装的maven的版本是3.0(包括3.0)以上的,则需要将create改成generate,如下:

mvn archetype:generate -DartifactId=maven_test -DgroupId=com.mastery -DpackageName=com.mastery -Dversion=1.0 -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveModel=false

参数解释:

-DartifactId:在 groupId 下的表示一个单独项目的唯一标识符;(指定需要构建项目的名称)

-DgroupId:团体,公司,小组,组织,项目,或者其它团体。团体标识的约定是,它以创

建这个项目的组织名称的逆向域名(reverse domain name)开头。来自Sonatype

的项目有一个以com.sonatype开头的 groupId ,而Apache Software的项目有以

org.apache开头的 groupId;

-DpackageName:设置包名的默认值,如果省略了该参数,则默认包名为-DgroupId设定的值;

-Dversion:一个项目的特定版本。发布的项目有一个固定的版本标识来指向该项目的某一个

特定的版本。而正在开发中的项目可以用一个特殊的标识,这种标识给版本加上

一个“SNAPSHOT”的标记;

-DarchetypeArtifactId:制定使用何种开发模式,常见的有maven-archetype-webapp和maven-archetype-quickstart以及允许自定义;

-DinteractiveModel:表示是否使用交互模式,交互模式会让用户填写版本信息之类的,非交互模式采用默认值

这样一来我们的maven_test项目就快速构建完成了。目录树如下:

maven_test

├── pom.xml

├── src

│ ├── main

│ │ └── java

│ │ └── com

│ │ └── mastery

│ │ └── App.java

│ └── test

│ └── java

│ └── com

│ └── mastery

│ └── AppTest.java

1.2 运行项目

mvn exec:java -Dexec.mainClass=com.mastery.App

结果如下:

[INFO] Scanning for projects...

[INFO]

[INFO] ------------------------------------------------------------------------

[INFO] Building maven_test 1.0

[INFO] ------------------------------------------------------------------------

[INFO]

[INFO] --- exec-maven-plugin:1.4.0:java (default-cli) @ maven_test ---

Hello World!

[INFO] ------------------------------------------------------------------------

[INFO] BUILD SUCCESS

[INFO] ------------------------------------------------------------------------

[INFO] Total time: 1.385 s

[INFO] Finished at: 2015-06-11T20:54:49+08:00

[INFO] Final Memory: 9M/246M

[INFO] ------------------------------------------------------------------------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: