一:简单介绍

他是一个帮我们管理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使用及创建项目的更多相关文章

  1. Maven 命令行创建项目时 Could not find goal ‘create’ in plugin org.apache.maven.plugins:...

    使用maven3.3.9 版本,进行命令行创建项目时输入以下命令创建失败 mvn archetype:create -DgroupId=com.zang.maven  -DartifactId=sys ...

  2. 老大说新项目的结构和 xxx 项目一样就可以了,我 ……(使用 Maven Archetype 快速创建项目)

    前言 又要开发新项目了,还是创建新项目,怎么办?老大说按照 xxx 项目的结构创建一个新项目就可以了. 公众号:liuzhihangs,记录工作学习中的技术.开发及源码笔记:时不时分享一些生活中的见闻 ...

  3. maven命令行创建项目问题

    今天在命令行下创建maven项目,使用的是create命令,但是一直失败,网上查找原因说archetype:create命令已经过期,需要使用 archetype:generate 来进行代替 加上了 ...

  4. maven eclipse配置 创建项目

    下载maven jar 可以去官网http://maven.apache.org/ 或者我的百度云http://download.csdn.net/detail/taopeng_100/9894787 ...

  5. Maven创建项目

    Maven创建项目 Maven翻译成中文是『专家.内行』.Maven是Apache组织中一个颇为成功的开源项目,Maven主要服务于基于Java平台的项目构建.依赖管理和项目信息管理的优秀工具 本文将 ...

  6. Maven创建项目时出现Generating project in Interactive mode就一直卡住的解决方案

    使用maven命令在创建项目的时候出现 Generating project in Interactive mode 然后就一直卡住 网上搜做了很多解决方案 有说各种方案的,最后找到了一种.实验成功 ...

  7. Maven自定义绑定插件目标:创建项目的源码jar

    <build> <plugins> <!-- 自定义绑定,创建项目的源码jar --> <plugin> <groupId>org.apac ...

  8. 配置Maven环境并创建简单的web项目步骤

    Maven的介绍 主要包含以下三个内容: 1.POM(Project Object Model):即An xml file(pom.xml):依赖管理.生命周期和插件的需要等都在pom.xml文件中完 ...

  9. Maven入门学习,安装及创建项目

    一.maven介绍: 1.maven是一个基于项目对象模型(POM Project Object Model),通过配置文件管理项目的工具(项目管理工具). 2.maven主要功能:发布项目(从编译到 ...

随机推荐

  1. putty连接ubuntu:network error:connection refused

    原因: ubuntu存在一个bug:在/var/run/目录下缺少一个文件夹sshd 解决方法: 在命令行输入: sudo mkdir /var/run/sshd sudo /usr/sbin/ssh ...

  2. HUD6182

    A Math Problem Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  3. ES6--JavaScript的第六个版本

    一.新的变量声明方式 let/cons 与var不同,新的变量声明方式带来了一些不一样的特性,其中最重要的两个特性就是提供了块级作用域与不再具备变量提升. 若是对变量提升不怎么了解的话可以去参考我的其 ...

  4. 【读书笔记】iOS-网络-使用Game Kit实现设备间通信

    Apple的Game Kit框架可以实现没有网络状况下的设备与设备之间的通信,这包括没有蜂窝服务,无法访问Wi-Fi基础设施以及无法访问局域网或Internet等情况.比如在丛林深处,高速公路上或是建 ...

  5. 七夕——来自google的一点轻松

    今天google在其hk主页推出了七夕主题的小游戏 先看看这个logo: 一共三轮 我的记录是7分21秒,还真是不容易

  6. 关于动态加载js

    已知一个需要动态加载的js的文件路径数组,动态加载数组里面所有的js文件. 加载分两种情况: 1. 并行加载,不管js的执行顺序. 2. 串行加载,即一个一个加载,上一个加载完再加载下一个,直到最后. ...

  7. 03-04_配置并启动Managed Server(受管服务器)

    本文重点: 配置Managed Servers(受管服务器) 启动Managed Servers 原理 运行多个Managed Servers实例             一.配置Managed Se ...

  8. EmEditor的一个好用的正则替换功能

    最近在编辑文本的时候用到了EmEditor的一个好用的正则替换功能.即我想用搜索到内容的一部分来生成另一段文本.例如客户提供给我一大堆MYSQL的建立主键的脚本,我想改成MSSQL的建立主键的脚本,这 ...

  9. 针对系统中磁盘IO负载过高的指导性操作

    针对系统中磁盘IO负载过高的指导性操作 主要命令:echo deadline > /sys/block/sda/queue/scheduler 注:以下的内容仅是提供参考,如果磁盘IO确实比较大 ...

  10. 将TXT文件 导入 sqlserver数据库

    情景一:​ 数据库已存在旧表名 old_table,列名old_column_name. 将TXT文件导入数据库已存在旧表old_table中,导入过程中需注意 数据源中列名可全部不修改 或 全部修改 ...