【教程】【超详细 (二)Maven命令】 Maven 从入门到项目应用

原创 2018年04月17日 01:13:37

Maven 教程

0.课程大纲


    这篇文章和大家分享Maven的命令。

1. 创建简单Maven工程

    在学习Maven前让我们首先创建一个简单的maven工程, 之后的命令篇幅就基于该工程进行操作、演示。

    在我们开始创建Maven工程前,不妨先思考一下我们有一个仓库集中管理我们的 jar 包, 当我们需要某一个 jar 包时就去仓库找,那么问题来了, 我们通过那些信息才能准确定位到一个 jar 包呢?或者说, 一个 jar 包它的 “坐标” 如何确定呢?

第一,这个 jar 包那个公司或社区开发的;因为肯能出现两个公司开发两个同名 jar 包的情况,所以需要确定那个公司开发的精确定位。

第二,这个 jar 包叫啥,或者说这个 jar 的项目名。名字, 必须有的,不然谁知道你找刘能呢还是赵四呢?哈哈...

第三,这个 jar 包的版本号,其实也很好理解, 这个 jar 包可能会不断迭代、优化、更新出很多版本, 所以你要明确告诉仓库我找那个版本。

这么看来,似乎我们就知道了, 一个 jar 包的“坐标” = 那个公司开发的 + 那个 jar + 版本号。

好了,现在让我们开始创建一个Maven项目吧。

1)New--->Maven Project



2)指定项目的坐标


我们需要的jar 包可以从中央仓库下载,当然我们的项目也可以打包之后共享给其他人在项目中通过maven添加依赖使用, 因此我们的项目也需要指定一个“坐标” 以供其他人找到我们的jar包。所以正如您看到的上图所示,Group ID就代表了开发这个jar包的公司或社区,一般为公司域名的倒序;Artifact ID就指定了项目名称;Version指定版本号。

Packaging指定打包方式(jar/war/pom):

一般为 JavaSE 项目打包为 jar, Java EE项目打包为 war, 而父工程打包为pom(后面会介绍)。

然后 Finish 我们就创建了我们第一个Maven工程hello-maven,目录结构如下:



3)修改 JRE 版本

我们可以看到Maven项目的默认JRE为1.5, 版本比较老旧, 我们现在一般都使用到1.7或1.8以上了, 所以在写代码之前我们首先将修改项目的JRE版本, 不然我们连强大的Stream/Lambda都用不了。打开项目根目录下/pom.xml, 添加插件如下:

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.dreamli</groupId>
  <artifactId>hello-maven</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  
  <properties>
  	<jdk.version>1.8</jdk.version>
  	<file.encoding>utf-8</file.encoding>
  </properties>
  
  <build>
  	<plugins>
  		<plugin>
  			<groupId>org.apache.maven.plugins</groupId>
  			<artifactId>maven-compiler-plugin</artifactId>
  			<version>3.1</version>
  			<configuration>
  				<source>${jdk.version}</source>
  				<target>${jdk.version}</target>
  				<encoding>${file.encoding}</encoding>
  			</configuration>
  		</plugin>
  	</plugins>
  </build>
</project>

添加完后我们写一个1.8的Stream发现项目还在报错,查看Problems输出,如下:


我们发现, 第一个错误是Stream需要jdk1.8,看来我们的配置还没有生效;第二个错误提示我们选择Maven-->Update Project,因此我们就在项目目录上右键----> Maven ---> Update Project...


    更新之后发现我们的错误都没有了,而且我们的JRE也切换到了1.8。在这里需要说一嘴, Maven 项目非常容易见到项目报错,因此, Update Project我们以后可能会经常执行的。

2.Maven命令

现在我们已经有一个Maven工程了, 我们就开始基于该工程学习一下Maven的常用命令。

1) clean:清理
用于清理项目 ——> 删除编译输出目录 target
2.)compile:编译
用于编译项目 ——> 将 .java 文件编译输出到 项目根目录/target/

3)  test:测试
用于运行测试文件 ---> 测试文件的类名必须命名为 xxxTest.java

4) package:打包
用于打包项目, 项目打包后输出文件位于target目录下。
            Java SE —> jar 包
            Java Web —> war 包

5) Install: 发布
用于将当前项目打包发布到 Maven 本地仓库

6) mvn tomcat:run 运行项目到tomcat   --- 该命令用在Maven-web 项目,  我们下一篇Maven整合JavaWeb再说。
 

7)三套命令生命周期:
生命周期: 执行后一个命令时会自动执行前面的命令。如上 mvn package命令截图所示。
1> cleanLifeCycle:
            clean ——> 清理项目(删除target 目录)
2>  defaultLifeCycle:
            compile —> 编译项目
            test  ——> 运行测试文件
            package ——> 将项目打包 ——> 输出文件在project/target/ 下
            install  ----> 将项目发布到本地仓库
            deploy ——> 将项目发布到私服
3>  siteLifeCycle
            site ——> 用于生成文档 

8)在Eclipse中执行命令

如: 在Eclipse里面编译项目:



到此, Maven的创用命令就和大家分享的差不多了, 还有一少部分在后面我们开发Maven的Web项目时用到再提。还是希望能够帮助到Maven初学者,不足之处也请大家批评指正。感兴趣的朋友可以关注一下我的博客, 下一篇和大家分享Maven冲突及其解决方法。

上一篇: Maven 环境搭建


版权声明:本文为博主原创文章,转载请注明来源: http://blog.csdn.net/dreamli1314 https://blog.csdn.net/DreamLi1314/article/details/79968734

Spring MVC入门之构建到运行,超详细(利用Maven构建)

1、概述Spring MVC是由Spring提供的一个Web框架,由于其强大而灵活的功能,得到了广泛的应用,因此作为一名程序员的话是必须要掌握的,另外Maven目前也是流行的项目管理工具,因此,本文讲...
  • u012551835
  • u012551835
  • 2017-08-20 11:34:57
  • 129

maven学习-从入门到精通(一)

一、Maven 概念:Maven是一个java语言编写的开源项目管理管理工具,是Apache软件基金会的顶级项目。主要用于项目构建,依赖管理,项目信息管理。百度百科 二、Maven下载  下载地址...
  • u011182412
  • u011182412
  • 2016-12-21 17:35:51
  • 7605

maven文档资料

  • 2017年11月20日 18:24
  • 488KB
  • 下载

Maven从入门到精通的吐血之作.pdf

  • 2016年01月24日 20:11
  • 1.85MB
  • 下载

最详细的maven教程全攻略之maven基础片(一)

Maven使用教程 一、Maven介绍 我们在开发项目的过程中,会使用一些开源框架、第三方的工具等等,这些都是以jar包的方式被项目所引用,并且有些jar包还会依赖其他的j...
  • qq_35409640
  • qq_35409640
  • 2017-05-30 08:19:55
  • 6435

maven 简单入门教学

Maven那点事儿(Eclipse版) 前言:   由于最近工作学习,总是能碰到Maven的源码。虽然平时工作并不使用Maven,但是为了学习一些源码,还是必须要了解下。这篇文章不是一个...
  • maple980326
  • maple980326
  • 2016-08-03 15:51:15
  • 5147

Maven入门(含实例教程)

Maven这个个项目管理和构建自动化工具,越来越多的开发人员使用它来管理项目中的jar包。接下来小宝鸽,将从下面几个方向介绍maven:(1)Maven简单介绍 (2)Maven安装与配置 (3)...
  • u013142781
  • u013142781
  • 2015-12-15 15:41:59
  • 46984

Maven 学习资料汇总

Maven 学习资料汇总 1、maven 入门资料(讲解非常清晰明了,比我自己做的笔记还要好) http://www.cnblogs.com/luotaoyeah/archive/2014/06/...
  • lw_power
  • lw_power
  • 2015-06-13 17:05:07
  • 1004

Maven 命令Maven 命令Maven 命令

  • 2011年08月14日 22:39
  • 40KB
  • 下载

Maven入门案例

  • 2015年01月02日 19:11
  • 309KB
  • 下载
收藏助手
不良信息举报
您举报文章:【教程】【超详细 (二)Maven命令】 Maven 从入门到项目应用
举报原因:
原因补充:

(最多只允许输入30个字)