一、Maven的安装 :
1、将 maven3.0解压到任一目录下,如D:\Program Files
2、配置环境变量:变量名: MAVEN_HOME   变量值:D:\Program Files\apache- maven-3.0.4
然后在Pathz中添加% MAVEN_HOME%\bin(同时Java环境变量配置成功)
3、运行 cmd,输入mvn -version。若显示版本信息,则安装成功。
 
二、在命令行中使用Maven创建Java项目
1、使用 命令行(开始-运行- cmd)进入一个自定义文件夹
2、在 命令行中输入:mvn archetype:create -DgroupId=com.test -DartifactId=TestProject
groupId与artifactId惟一标识一个项目,它们也决定了这个项目在依赖库中的位置,这条
命令执行完毕后,在执行
命令的路径下会出现如下目录结构:

--TestProject

----src

------main

--------java

----------com

------------test

------test

--------java

----------com

------------test

并且在TestProject中生成了一个pom.xml文件,内容是一个项目应该有的最基本的配置,并且
Maven默认添加了Junit的依赖,以此来鼓励单元测试。


Maven的一个优点就是使用标准的目录结构,从上面的目录结构可以看出来,标准的目录结构中有两棵源代码树,一棵是Java应用程序的代码树,一棵是单元测试代码树。

在执行创建项目的
命令时,
Maven会下载一些文件,当你开始调用工具时,
Maven会根据你使用的插件来更新自身的一些功能。创建完项目后,
在项目的pom.xml文件所在的目录下可以执行各种
Maven命令,常用的有如下几种:

mvn test:运行应用程序中的单元测试

mvn package:依据项目生成jar文件

mvn install:将项目的jar文件添加到库中,以备依赖此项目时使用

mvn site:生成项目相关信息的网站

mvn clean:清除目标目录中的生成结果

mvn eclipse:eclipse:生成Eclipse项目文件
 
三、在命令行中使用Maven创建Java Web项目:
1、使用
命令行(开始-运行-
cmd)进入一个自定义文件夹 www.it165.net
2、在
命令行中输入:mvn archetype:create -DgroupId=com.testweb -DartifactId=TestWebProject -DarchetypeArtifactId=
maven-archetype-webapp
3、生成的项目目录如下:
TestWebProject

----src

------main

--------resources

--------webapp

----------WEB-INF

同样,在TestWebProject目录下也生成了pom.xml文件,并且在WEB-INF目录下生成了web.xml文件;不同的是,现在的项目打包不再是jar包,而是war包,可查看pom.xml文件中的package标签:<packaging>war</packaging>。另外,可以使用finalName标签来改变war包的名称,如:

<build>

<finalName>NewWarName</finalName>

</build>

在使用mvn package
命令打包的时候,不必担心WEB-INF/lib中的依赖包如何得到,依赖属性值被设置成compile的情况下,
Maven会自动包含依赖项。
 
四、管理依赖

使用
Maven的一大好处就是可以统一管理依赖关系。为项目添加依赖关系也非常的简单,只需要添加一个dependency标签即可,如:

<dependency>

 <groupId>quartz</groupId>

<artifactId>quartz</artifactId>
 <version>1.5.1</version>

 <scope>compile</scope>

</dependency>

其中,groupId、artifactId和version指定了特定的依赖包及其版本;scope的取值有如下几种:

compile:默认值。表明是所有任务所需的资源

test:运行所有的测试用例时所需资源

runtime:表明是运行时所需资源

provided:JDK部分或应用服务器的classpath所需的资源

DOS命令行中用MAVEN构建 Java 和 Java Web 项目的更多相关文章

  1. 使用spring 4.0 + maven 构建超简单的web项目

    一.需求 使用spring去管理web项目,是目前非常流行的一种思路,本文将介绍使用maven+spring 4.0.2 来构建一个简单的web项目. 二.实现 1.新建一个maven项目,如下图所示 ...

  2. 快捷键和功能键、进入DOS命令行的方法、DOS命令讲解、java跨平台原理、JRE和JDK的定义、书写格式

    快捷键和功能键A:键盘功能键* a:Tab* b:Shift* c:Ctrl* d:Alt* e:空格 * f:Enter* g:Window* h:上下左右键* i:PrtSc(PrintScree ...

  3. 使sublimetext3在ubuntu下可以打中文和在windows的dos命令行下正常显示中文

    学习闲暇之余,总结一下在windows和ubuntu下使用sublimetext3遇到的问题 一.关于sublimetext3在windows的dos命令行下不能编译运行中文的解决方案: 因为dos命 ...

  4. dos命令行运行.class源文件错误解决办法

    dos命令行运行java源文件 public static void main(String[] args) throws IOException { // TODO Auto-generated m ...

  5. DOS命令行简单用法

    DOS命令行简单用法 基本用法 1.cd(回车)从当前目录切回到根目录. 2.dir(回车)列出当前目录下的所有文件. 3.md kkk(回车)在当前目录下创建一个名称为kkk的文件夹. 4.rd k ...

  6. 使用命令行创建maven web项目

    一,前言 遇到了一个非常简单的maven命令: 总的来说,这是一个用maven创建一个jersey快速开始项目的maven命令. 这次不妨使用maven命令来构建项目,看体验如何. 在文章idea m ...

  7. windows系统下在dos命令行kill掉被占用的pid (转)

    原文出自:http://www.2cto.com/os/201304/203771.html   windows系统下在dos命令行kill掉被占用的pid   1.开始-->运行-->c ...

  8. dos命令行连接数据库

    dos命令行连接数据库 (2012-03-22 21:26:16) 转载▼ 标签: it   C:\Adminstrator> sqlplus "/as sysdba" 查看 ...

  9. DOS命令行中的双引号

    在DOS命令窗口下,运行C:\Program Files\WinRAR\WinRAR.exe,提示如下错误: 因为C:\Program Files\WinRAR\WinRAR.exe中含有空格,它被分 ...

随机推荐

  1. Git批量修改提交历史

    有些时候我们可能需要批量修改提交历史,当然了,最近一次的提交历史很简单我们可以利用 git commit --amend 来进行最近一次提交的修改,如果你此时想要更新作者提交时间等也可以在amend之 ...

  2. ReiserFS与EXT3的比较

    ReiserFS与EXT3的比较 最近,我刚从ReiserFS文件系统转到了ext3日志文件系统.我是一个ReiserFS的忠实追随者,并且直到现在我也没有改变我对该文件系统的看法.我之所以转而使用e ...

  3. (转载)PHP静态方法

    (转载)Lamp兄弟连PHP 6.静态方法(static修饰的方法),不能访问非静态成员(在非静态的方法中,可以访问静态成员).因为非静态的成员,就必须用对象来访问,访问内部的成员使用的就是$this ...

  4. NOI题库1980 陪审团的人选(POJ1015)

    1980:陪审团的人选 总时间限制: 1000ms 内存限制: 65536kB 描述 在遥远的国家佛罗布尼亚,嫌犯是否有罪,须由陪审团决定.陪审团是由法官从公众中挑选的.先随机挑选n个人作为陪审团的候 ...

  5. Ubuntu 12.04 Server OpenStack Havana多节点(OVS+GRE)安装

    1.需求 节点角色 NICs 控制节点 eth0(10.10.10.51)eth1(192.168.100.51) 网络节点 eth0(10.10.10.52)eth1(10.20.20.52)eth ...

  6. QQ群成员提取

    var ids = document.querySelectorAll(".member_id"); var names = document.querySelectorAll(& ...

  7. Hard 随机洗牌函数 @CareerCup

    第i个元素和index在[i,length-1]之间的一个数随机交换 package Hard; import CtCILibrary.AssortedMethods; /** * * Write a ...

  8. boost------bind的使用(Boost程序库完全开发指南)读书笔记

    bind是c++98标准库中函数适配器bind1st/bind2nd的泛化和增强,可以适配任意的可调用类型,包括函数指针.函数引用.成员函数指针和函数对象. 1.工作原理 bind并不是一个单独的类或 ...

  9. [转]Android实现计时与倒计时(限时抢购)的几种方法

    在购物网站的促销活动中一般都有倒计时限制购物时间或者折扣的时间,这些都是如何实现的呢? 在一个安卓客户端项目中恰好遇到了类似的问题,一开始使用的是Timer与 TimerTask, 虽然此方法通用,但 ...

  10. 滑动到底部或顶部响应的ScrollView实现

    关于使用可见:滚动到底部或顶部响应的ScrollView使用 示例APK可从这些地址下载:Google Play,  360手机助手,  百度手机助手,  小米应用商店,  豌豆荚 两种实现方式的主要 ...