第一个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] ------------------------------------------------------------------------
相关文章推荐
- WGS84,GCJ02, BD09坐标转换
- GIS空间分析 面状要素中轴线提取
- 存储管理器实验
- ubuntu下安装eclipse,配置jdk环境变量仍然报错
- 设置自定义input框内只能输入数字
- POJ 2104 区间第K大值(划分树做法)
- Android耳机线控详解,蓝牙耳机按钮监听(仿酷狗线控效果)
- 构建之法——典型用户和场景+软件设计与实现+用户体验
- poj1094
- C语言介绍(linux)
- 第一章:nagios 下载&安装
- 类作用域中名字查找的思考(《C++ primer》第四版P382)
- 2015年 6月11日 前端面试
- 异步编程模式
- LeetCode 之 Reverse Words in a String — C 实现
- 安卓TV开发(三) 移动智能设备之实现主流TV电视盒子焦点可控UI
- 网络编程---(数据请求+slider)将网络上的大文件下载到本地,并打印其进度
- 后缀表达式求值的步骤描述
- GNU Sed - Sed替换入门
- 安卓TV开发(三) 移动智能设备之实现主流TV电视盒子焦点可控UI