文档章节

第一个maven构建

凌枫yong
 凌枫yong
发布于 2016/07/17 13:40
字数 471
阅读 5
收藏 0

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


本文转载自:http://blog.csdn.net/u011990285/article/details/46461367

共有 人打赏支持
下一篇: dbcp
凌枫yong
粉丝 1
博文 65
码字总数 0
作品 0
南昌
私信 提问
项目构建工具--Maven

开源中国的 Maven 库 http://maven.oschina.net 目前,绝大多数开发人员都把 Ant 当作 Java 编程项目的标准构建工具。遗憾的是,Ant 的项目管理工具(作为make的替代工具)不能满足绝大多数开...

匿名
2008/09/07
169.4K
37
Maven配置 settings.xml

本地仓库是远程仓库的一个缓冲和子集,当你构建Maven项目的时候,首先会从本地仓库查找资源,如果没有,那么Maven会从远程仓库下载到你本地仓库。这样在你下次使用的时候就不需要从远程下载了...

咖啡杯
2014/02/19
0
0
[Maven-不忘初心,方得始终] Maven Project初识

Maven项目目录结构: src -main -java -package(包名) -test -java -package(包名) resources-存放资源文件 以"Maven项目之HelloWorld"来说明如何纯手工构建一个Maven项目. 按照上面给出的目录...

LSantorini
2016/02/15
126
2
通过 JBoss Weld 和 Coherence 来分发 CDI Beans

上下文和依赖注入(CDI)是依赖注入和上下文生命周期管理的Java标准。它源自JSR-299。JBoss Weld是JSR-299的参考实现(RI),它作为Seam项目的一部分正在开发之中。 本文介绍了如何使用Coherence...

oschina
2013/11/05
950
0
Docker多步构建更小的Java镜像

译者按: 最新版Docker将支持多步构建(Multi-stage build),这样使用单个Dockerfile就可以定义多个中间镜像用于构建,测试以及发布等多个步骤,并且有效减小最终镜像的大小。 原文: Creating ...

Fundebug
2017/05/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Confluence 6 升级中的一些常见问题

升级的时候遇到了问题了吗? 如果你想尝试重新进行升级的话,你需要首先重新恢复老的备份。不要尝试再次对 Confluence 进行升级或者在升级失败后重新启动老的 Confluence。 在升级过程中的一...

honeymoose
40分钟前
1
0
C++随笔(四)Nuget打包

首先把自己编译好的包全部准备到一个文件夹 像这样 接下来新建一个文本文档,后缀名叫.nuspec 填写内容 <?xml version="1.0"?><package xmlns="http://schemas.microsoft.com/packaging/201......

Pulsar-V
今天
2
0
再谈使用开源软件搭建数据分析平台

三年前,我写了这篇博客使用开源软件快速搭建数据分析平台, 当时收到了许多的反馈,有50个点赞和300+的收藏。到现在我还能收到一些关于dataplay2的问题。在过去的三年,开源社区和新技术的发...

naughty
今天
3
0
Python3的日期和时间

python 中处理日期时间数据通常使用datetime和time库 因为这两个库中的一些功能有些重复,所以,首先我们来比较一下这两个库的区别,这可以帮助我们在适当的情况下时候合适的库。 在Python文...

编程老陆
今天
2
0
分布式面试整理

并发和并行 并行是两个任务同时进行,而并发呢,则是一会做一个任务一会又切换做另一个任务。 临界区 临界区用来表示一种公共资源或者说是共享数据,可以被多个线程使用,但是每一次,只能有...

群星纪元
今天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部