上一节讲了maven的安装和配置,这一节我们来学习一下创建一个简单的Maven项目

1. 用Maven 命令创建一个简单的Maven项目

在cmd中运行如下命令:

  1. mvn archetype:generate
  2. -DgroupId=com.mycompany.app
  3. -DartifactId=my-app-simple
  4. -Dversion=1.0
  5. -DarchetypeArtifactId=maven-archetype-quickstart

即可在当前目录创建一个简单的maven项目,当然创建的时候会从Maven库中下载相关的依赖,耐心等待即可。

maven的大致结构如下:

  1. my-app
  2. |-- pom.xml
  3. `-- src
  4. |-- main
  5. |   |-- java
  6. |   |   `-- com
  7. |   |       `-- mycompany
  8. |   |           `-- app
  9. |   |               `-- App.java
  10. |   `-- resources
  11. |       `-- META-INF
  12. |           `-- application.properties
  13. `-- test
  14. `-- java
  15. `-- com
  16. `-- mycompany
  17. `-- app
  18. `-- AppTest.java

src/main/java : java源文件存放位置

src/main/resource : resource资源,如配置文件等

src/test/java : 测试代码源文件存放位置

2.简单POM.xml

打开项目即可看到pom.xml

  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  2. xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>com.mycompany.app</groupId>
  5. <artifactId>my-app-simple</artifactId>
  6. <packaging>jar</packaging>
  7. <version>1.0</version>
  8. <name>my-app-simple</name>
  9. <url>http://maven.apache.org</url>
  10. <dependencies>
  11. <dependency>
  12. <groupId>junit</groupId>
  13. <artifactId>junit</artifactId>
  14. <version>3.8.1</version>
  15. <scope>test</scope>
  16. </dependency>
  17. </dependencies>
  18. </project>

这段代码中最重要的是包含groupId, artifactId 和 version 的三行。这三个元素定义了一个项目基本的坐标

 

groupId 定义了项目属于哪个组,这个组往往和项目所在的组织或公司存在关联。譬如在googlecode上建立了一个名为myapp的项目,那么groupId就应该是com.googlecode.myapp

artifactId 定义了当前Maven项目在组织中唯一的ID, 可以理解为项目中的模块, 模块为Maven中最小单位构件

version 项目的版本

3.运行简单Maven命令

我们已经创建了最简单的Maven项目,下面我们来执行一些简单的构建命令

  编译: compile

在cmd中,将目录切换到my-app-simple下,执行mvn clean compile

build success之后我们会在my-app-simple下看到新增了一个target目录,该目录下存放项目编译后的文件,如.class文件

  清理: clean

cmd目录my-app-simple下执行命令 mvn clean

会将target文件删除,即清理项目,该命令可以结合其他命令运行

  测试: test

cmd目录my-app-simple下执行命令 mvn test

会执行src/test/java 下的Junit 测试代码

当然在执行测试之前会自动执行编译命令,运行结果如下图:

打包: package

cmd目录my-app-simple下执行命令 mvn package

会将项目打成jar包,并放在target目录中

执行此命令之前会先执行编译和测试命令

安装:install 

cmd目录my-app-simple下执行命令 mvn install

会将项目jar包安装到本地仓库中,以便其他项目使用

执行此命令之前会先执行编译,测试,打包命令

Maven实战(二)构建简单Maven项目的更多相关文章

  1. IDEA + maven 零基础构建 java agent 项目

    200316-IDEA + maven 零基础构建 java agent 项目 Java Agent(java 探针)虽说在 jdk1.5 之后就有了,但是对于绝大多数的业务开发 javaer 来说, ...

  2. Ant—使用Ant构建简单Java项目(三)

    博客<Ant-使用Ant构建简单Java项目(二)>我们简化了运行Test类中main方法须要运行的命令,本博客来介绍一下如何使build.xml文件和当中使用property标签定义的属 ...

  3. webpack工具学习 构建简单vue项目(不依赖vue-cli) webpack4.0

    目的用webpack构建简单前端项目 1.npm init   (npm init -y)  形成package.json 2.npm install --save-dev webpack  形成 n ...

  4. (转)Maven实战(二)构建简单Maven项目

    上一节讲了maven的安装和配置,这一节我们来学习一下创建一个简单的Maven项目 1. 用Maven 命令创建一个简单的Maven项目 在cmd中运行如下命令: mvn archetype:gene ...

  5. Maven(二)之Maven项目构建演练

    从上一篇的讲解中我们知道了什么是Maven,然后它的安装配置,到修改本地仓库,这篇我们用一个实际的例子,带领大家走进我们的Maven之旅.让我们一起来体验一下Maven的高度自动化构建项目的过程. 一 ...

  6. IntelliJ IDEA maven 构建简单springmvc项目

    环境: apache-tomcat-8.5.15 jdk1.8.0_172 IDEA 建立一个maven-webapp项目:Create New Project 后点击next 然后next 可以选择 ...

  7. eclipse maven 构建简单springmvc项目

    环境:eclipse Version: Oxygen.3a Release (4.7.3a) 创建maven Project项目,目录结构 修改工程的相关编译属性 修改pop.xml,引入spring ...

  8. [maven] 实战笔记 - 构建、打包和安装maven

    ① 手工构建自己的maven项目 Maven 项目的核心是 pom.xml.POM (Project Object Model,项目对象模型)定义了项目的基本信息,用于描述项目如何构建,声明项目依赖等 ...

  9. 使用maven, myeclipse工具构建spring mvc项目

    一.使用myeclipse 创建一个新的 maven项目. (ps:1.在filter过滤的时候输入 webapp 选择"maven-archetype-webapp". 2.在m ...

随机推荐

  1. 实现Android4.4系统设置分页滑动浏览功能

    需求描述: 由于手机功能越来越完善,相应的偏好设置也就越来越多:从用户体验的角度考虑,为了让用户能够在短时间内对常用的偏好设置进行操作,如WIFI,蜂窝数据等.单独将一些常用的设置功能单独展示出来,已 ...

  2. 国产AR SDK介绍

    说到VR,大家都知道虚拟现实有多火.可是VR之后呢,还有AR.相较于VR,AR的应用意义更加的强大. 相信在不久的将来AR和VR将会融为一体,把现实世界的数据信息完全联通在我们的眼前.这其中的领头羊莫 ...

  3. Java技术的特点

    Java技术是一套完整的IT行业解决方案,其中包含了很多技术.最初是从解决家电设备联网通讯的方案发展起来的,其特点适用于Internet,于是在Internet广泛应用的环境下,迅速发展成为一种计算机 ...

  4. Linux 2>&1理解(转)

    2>&1使用一 相关知识1)默认地,标准的输入为键盘,但是也可以来自文件或管道(pipe |).2)默认地,标准的输出为终端(terminal),但是也可以重定向到文件,管道或后引号(b ...

  5. Socket编程基础——Socket选项

    有些情况下,我们需要对Socket行为和属性进一步控制,例如修改缓冲区大小,查看Socket状态,这就需要设置/获取Socket选项. 1.获取Socket选项int getsockopt(SOCKE ...

  6. thinking in Java 学习

    1.句柄 所谓句柄实际上是一个数据,是一个long的数据. 句柄是WINDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图, ...

  7. Java问题总结

    1.如何查看使用java的版本 cmd-->java -version 2.如何下载jdk,sdk Java.JDK(工具包)的安装_百度经验http://jingyan.baidu.com/a ...

  8. HTML结构文档中那些基础又重要又容易被忽略的事?

    HTML结构文档中那些基础又重要又容易被忽略的事? 大部分的人,总是会做出这样下意识地判断:简单就是不重要,容易就可以直接忽略掉!其实不然,简有精髓,基石必重,岂能略而不顾!HTML结构文档的编写,可 ...

  9. 【Gerrit】gerrit server搭建

    Part 1  Gerrit Prerequisites: 1.Java JDK>1.7 2.Git 3.SSH server 4.DB part 2 Set local gerrit serv ...

  10. myeclipse启动tomcat报错cannot find a free socket for debugger

    解决办法,命令行输入netsh winsock reset,winsock是Windows网络编程接口,winsock工作在应用层,它提供与底层传输协议无关的高层数据传输编程接口 netsh wins ...