项目最近开始使用maven去管理项目啦,说真的对于maven是一窍不通啊,今天和同事在回家的路上聊天的时候同事说他去第一家公司面试的时候人家问他 maven 怎么打包,当时我就懵逼了,因为我也不知道啊!赶紧问了下,答案是 maven package。其实想想不会那么简单。今天回来赶紧学习一下。

安装maven  

  通过查询一些资料就开始我的第一个maven项目了,首先当然是去maven的官网下载maven的压缩包,本人用的是3.3.9。然后配置下环境变量。完后检查下,然后打开dos窗口使用 mvn -version 查看环境变量是否配置正确。如何配置环境变量,我就不罗嗦了!这都不会就好好反省下吧!

可以看到会将我们的系统版本 java版本都打印出来,奇怪的是哥们用的是windows10,居然显示 8.1,什么鬼?

第一个maven项目

  网上有很多的教程都是手把手教我们在IDE中创建一个maven项目,哥们发现其实我们可以使用maven命令为我们创建一个demo项目。我们使用 archetype:generate 命令为我们自动创建一个demo项目。这里需要提一下就是,由于国内网络有所限制,因此在下载一些需要的包的时候非常慢,这里告诉大家我们可以手都的更改maven的配置文件(maven目录/conf/setting.xml) 这里修改镜像地址。本人使用了阿里的镜像仓库:

<mirror>
<id>nexus-aliyun</id>
<mirrorOf>*</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</mirror>

  注意:这里填了central或者通配符“*”后,所有请求中央仓库的请求都会转到镜像仓库中

  在下载过程中然我们选择下载的类型,本人选择的是quickstart,当然你可以根据选择选取你需要的案例。其次还有一些参数如:-DgroupId=com.jeff.maven01--项目包名 -DartifactId=maven01--模块名 -Dvertsion=0.0.1SNAPSHOT --版本号 -Dpackage=com.jeff.maven01 --包名 输入完毕后就下载了一个demo项目。

编译项目

  我们已经有一个demo项目了,你可以打开这个项目看下里面是做了什么事情,我就不告诉你了,免得你偷懒不去操作。接下来我们对这个项目进行编译 使用 mvn compile 对其进行编译,我在使用这个命令进行编译的时候遇到这样一个错误信息 No compiler is provided in this environment. Perhaps you are running on a JRE rather than a JDK?。在网上查询了一些资料都是通过IDE进行配置的项目,没办法,想了好久,最后通过把环境变量中的JRE的配置删除了,然后ok了!!!

  这时候你可以去看下你的项目目录下会有一个 target 目录,其子目录下有我们喜欢的class文件了。

测试

  可以通过使用 mvn test 命令进行测试。

 这时候会在target 目录下为我们生成一个测试报告的文件和测试的class文件。

打包

  使用 mvn package 对项目进行打包。

  这时候看以看到就为我们生成了该项目的jar文件了。

  到此如何构建第一个 maven 项目和一些经常用到的命令大家都应该会操作了,但是对于maven的学习远远不止这些,本人还会陆续的更新,由于第一次学习有什么不对的地方,往大家指出来!共同进步!

  洗碗去喽!!!

Maven 学习笔记(二)的更多相关文章

  1. Maven学习笔记二

    依赖范围 <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api&l ...

  2. Maven学习笔记(二) :Maven的安装与配置

    在Windows上安装Maven:    1.  首先检查安装JDK 通过命令行运行命令:echo %JAVA_HOME%和 java  -version,能够查看当前java的安装文件夹及java的 ...

  3. maven学习笔记二(了解maven的基本命令)

    maven常用的命令 mvn archetype:create 创建Maven项目 mvn compile 编译源代码 mvn deploy 发布项目 mvn test-compile 编译测试源代码 ...

  4. Maven学习笔记—仓库

    Maven仓库 1 什么是Maven仓库 在Maven中,任何一个依赖.插件或者项目构建的输出,都可以成为构件,而Maven通常在某个位置统一的存储所有Maven项目共享的构件,这个统一的位置就是Ma ...

  5. Maven 学习笔记(二)

    前面一文——Maven 学习笔记(一)中已经提到了 pom 的大部分配置,Maven 本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给创建来完成,每一个任务都会对应一个插件 ...

  6. Maven学习笔记-03-Eclipse下maven项目在Tomcat7和Jetty6中部署调试

    现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...

  7. Maven学习笔记-04-Eclipse下maven项目在Tomcat7和Jetty6中部署调试

    现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...

  8. JDBC学习笔记二

    JDBC学习笔记二 4.execute()方法执行SQL语句 execute几乎可以执行任何SQL语句,当execute执行过SQL语句之后会返回一个布尔类型的值,代表是否返回了ResultSet对象 ...

  9. ZooKeeper学习笔记二:API基本使用

    Grey ZooKeeper学习笔记二:API基本使用 准备工作 搭建一个zk集群,参考ZooKeeper学习笔记一:集群搭建. 确保项目可以访问集群的每个节点 新建一个基于jdk1.8的maven项 ...

随机推荐

  1. python与JavaScript中正则表达式如何转换

    使用python爬取网站数据的时候,总会遇到各种各样的反爬虫策略,有很大一部分都和JavaScript(以下简称为JS) 有关.在破解这些JS代码的过程中,经常会遇到模拟JS正则表达式的情况,因此,今 ...

  2. (网络流) Sabotage -- UVA -- 10480

    链接: http://acm.hust.edu.cn/vjudge/contest/view.action?cid=82835#problem/J 代码: #include<cstdio> ...

  3. bootstrap-treeview 关于checkbox选择框不显示的问题

    bootstrap-treeview.js  1.0.2 不支持checkbox,最后使用 bootstrap-treeview.js  1.2.0 解决此问题.

  4. OpenGL模型视图变换、投影变换、视口变换的理解

    OpenGL中不设置模型,投影,视口,所绘制的几何图形的坐标只能是-1到1(X轴向右,Y轴向上,Z轴垂直屏幕向外). 产生目标场景的过程类似于用照相机进行拍照: (1)把照相机固定在三角架上,并让他对 ...

  5. Delphi 动态与静态调用DLL(最好的资料)

    摘要:本文阐述了 Windows 环境下动态链接库的概念和特点,对静态调用和动态调用两种调用方式作出了比较,并给出了 Delphi 中应用动态链接库的实例. 一.动态链接库的概念    动态链接库(  ...

  6. ECG心电图数据2

    1.如何下载获取MIT-BIH的数据从下面这个官方链接页面可以下载到所有48组MIT-BIH心电数据: http://www.physionet.org/physiobank/database/mit ...

  7. saprk2 structed streaming

    netcat (windows) >nc -L -p 9999 import java.sql.Timestamp import org.apache.spark.sql.SparkSessio ...

  8. Spring Boot 应用系列 4 -- Spring Boot 2 整合log4j2

    一.背景 1. log4j2传承于log4j和logback,它是目前性能最好的日志处理工具,有关它们的性能对比请看: 2. 除了性能好之外,log4j2有这么几个重要的新features: (1) ...

  9. Latency Compensating Methods in Client/Server In-game Protocol Design and Optimization【转】

    https://developer.valvesoftware.com/wiki/Latency_Compensating_Methods_in_Client/Server_In-game_Proto ...

  10. html隐藏元素

    <body> <div>display:元素的位置不被占用</div> <div id="div1" style="displa ...