maven使用及创建项目
一:简单介绍
他是一个帮我们管理jar,并帮助我们处理jar包依赖。
他是一个我们编译、测试、运行、打包的一键构建。

我们在使用后面的命令的同时,前面的过程也自动执行。
二、仓库的分类:

分本地仓库、远程仓库和中央仓库。
本地仓库的配置文件在:
maven项目的目录结构:

在我们创建的项目的时候,java和resources目录是不存在的。需要手动创建。
三、maven的命令:
compile
compile是maven工程的编译命令,作用是将src/main/java下的文件编译为class文件输出到target目录下。
cmd进入命令状态,执行mvn compile,如下图提示成功:

查看 target目录,class文件已生成,编译完成。

test
test是maven工程的测试命令,会执行src/test/java下的单元测试类。
cmd执行mvn test执行src/test/java下单元测试类,下图为测试结果,运行1个测试用例,全部成功。

clean
clean是maven工程的清理命令,执行 clean会删除target目录的内容。
package
package是maven工程的打包命令,对于java工程执行package打成jar包,对于web工程打成war包。
install
install是maven工程的安装命令,执行install将maven打成jar包或war包发布到本地仓库。
从运行结果中,可以看出:
当后面的命令执行时,前面的操作过程也都会自动执行。

四、IDEA创建maven项目:
1)

2)

点击next

点击next

点击next

点击finish
完成之后右下角:
创建的进度。
完成之后:右下角点击自动导入

创建完之后项目的目录:

只有webapp。没有java和resources目录 。
我们点击:


点击module的Sources。



新建的java,目录变成蓝色。
同理创建resources目录 不过右击的时候点击的是:

然后在看新创建的目录:有独有的标识。

然后点击apply -->ok
这样咱们的maven的项目的 创建完。
如何添加依赖呢?
打开pom.xml,点击标签:<dependencies> 然后录Alt+insert 快捷键出现:

然后点击Dependency:


点击我们想要的jar版本。

点击add
在pom.xml文件就自动添加了我们想要的依赖:

这样就添加我们的依赖,一般情况我们将现成的pom.xml文件直接使用避免一个一个导入。
五、配置tomcat:


添加本地的tomcatserver。

六、我们在java中写个简单的servlet。
创建一个servlet:
package com.jd.test;
import java.io.IOException;
public class ServletTest extends javax.servlet.http.HttpServlet {
protected void doPost(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
}
protected void doGet(javax.servlet.http.HttpServletRequest request, javax.servlet.http.HttpServletResponse response) throws javax.servlet.ServletException, IOException {
response.setContentType("text/html;charset=utf-8");
response.getWriter().print("这是一个测试页面!");
}
}
web.xml配置:

七:如果本地仓库没有,怎么添加jar包到本地仓库?
命令如下:
mvn install:install-file -Dfile=C:\Users\Administrator\commons-pool2-2.5..jar -DgroupId=org.apache -DartifactId=commons-pool -Dversion=-2.5 -Dpackaging=jar
八:当我们引入的依赖比如说spring4.0的时候相关的jar包会重复出现版本号4.0 这个时候我们可以定义属性,来进行变量设定。
<properties>
<spring.version>4.2..RELEASE</spring.version>
<struts2.version>2.3.</struts2.version>
<hibernate.version>5.0..Final</hibernate.version>
<slf4j.version>1.6.</slf4j.version>
<log4j.version>1.2.</log4j.version>
<shiro.version>1.2.</shiro.version>
<cxf.version>3.0.</cxf.version>
<c3p0.version>0.9.1.2</c3p0.version>
<mysql.version>5.1.</mysql.version>
</properties>
其中标签内的<c3p0.version>这个内容可以随便定义,可以定义xx在引用的时候,直接${xx}引用即可。
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>${c3p0.version}</version>
</dependency>
maven使用及创建项目的更多相关文章
- Maven 命令行创建项目时 Could not find goal ‘create’ in plugin org.apache.maven.plugins:...
使用maven3.3.9 版本,进行命令行创建项目时输入以下命令创建失败 mvn archetype:create -DgroupId=com.zang.maven -DartifactId=sys ...
- 老大说新项目的结构和 xxx 项目一样就可以了,我 ……(使用 Maven Archetype 快速创建项目)
前言 又要开发新项目了,还是创建新项目,怎么办?老大说按照 xxx 项目的结构创建一个新项目就可以了. 公众号:liuzhihangs,记录工作学习中的技术.开发及源码笔记:时不时分享一些生活中的见闻 ...
- maven命令行创建项目问题
今天在命令行下创建maven项目,使用的是create命令,但是一直失败,网上查找原因说archetype:create命令已经过期,需要使用 archetype:generate 来进行代替 加上了 ...
- maven eclipse配置 创建项目
下载maven jar 可以去官网http://maven.apache.org/ 或者我的百度云http://download.csdn.net/detail/taopeng_100/9894787 ...
- Maven创建项目
Maven创建项目 Maven翻译成中文是『专家.内行』.Maven是Apache组织中一个颇为成功的开源项目,Maven主要服务于基于Java平台的项目构建.依赖管理和项目信息管理的优秀工具 本文将 ...
- Maven创建项目时出现Generating project in Interactive mode就一直卡住的解决方案
使用maven命令在创建项目的时候出现 Generating project in Interactive mode 然后就一直卡住 网上搜做了很多解决方案 有说各种方案的,最后找到了一种.实验成功 ...
- Maven自定义绑定插件目标:创建项目的源码jar
<build> <plugins> <!-- 自定义绑定,创建项目的源码jar --> <plugin> <groupId>org.apac ...
- 配置Maven环境并创建简单的web项目步骤
Maven的介绍 主要包含以下三个内容: 1.POM(Project Object Model):即An xml file(pom.xml):依赖管理.生命周期和插件的需要等都在pom.xml文件中完 ...
- Maven入门学习,安装及创建项目
一.maven介绍: 1.maven是一个基于项目对象模型(POM Project Object Model),通过配置文件管理项目的工具(项目管理工具). 2.maven主要功能:发布项目(从编译到 ...
随机推荐
- POJ1611(KB2-B)
The Suspects Time Limit: 1000MS Memory Limit: 20000K Total Submissions: 39211 Accepted: 18981 De ...
- BZOJ4358: permu(带撤销并查集 不删除莫队)
题意 题目链接 Sol 感觉自己已经老的爬不动了.. 想了一会儿,大概用个不删除莫队+带撤销并查集就能搞了吧,\(n \sqrt{n} logn\)应该卡的过去 不过不删除莫队咋写来着?....跑去学 ...
- 高性能JavaScript(DOM编程)
首先什么是DOM?为什么慢? DOM:文档对象模型,是一个独立于语言的,用于操作XML和HTML文档的程序接口(API) 用脚本进行DOM操作的代价很昂贵.那么,怎样才能提高程序的效率? 1.DOM访 ...
- js的style.display小问题
在元素添加class样式隐藏display:none; 使用console.log(xx.style.display);//空值
- SD从零开始33-37
[原创]SD从零开始33 Billing简介 Billing在SD流程链中的集成: Billing document表征SD流程链中的最后功能: Billing document在R/3系统的不同区域 ...
- Oracle查询时15分钟划分
select to_date(to_char(sysdate, 'yyyy-MM-dd hh24') || ':' || floor(to_number(to_char(s ...
- memset初始化数组的问题
今天才搞清楚,memset用于初始化数组,仅能初始化为0值,而不能初始化一个特定的值,这怎么能模糊了呢??? 因此,如果对申请的一段存放数组的内存进行初始化,每个数组元素均初始化为特定的值,必须使用循 ...
- MySql 定时任务的使用
MySql 定时任务的使用 by:授客 QQ:1033553122 简介 自 MySQL5.1.6起,增加了一个非常有特色的功能–事件调度器(Event Scheduler),可以用做定时执行某些特定 ...
- Hive使用SequenceFile存储数据
SequenceFile是使用二进制保存数据,是可以压缩的,并且压缩后的数据可被分割,可以供mapreduce处理. 下面的实例使用SequenceFile保存Hive表的数据,并且使用了压缩. se ...
- fiddler常见的应用场景
在移动互联网时代,作为软件测试工程师,fiddler绝对是值得掌握并添加进技术栈里的工具之一. 那么,fiddler在日常的测试工作中,一般都有哪些常见的应用场景呢? 根据以往工作经验,大概有如下4类 ...