转 maven3常用命令、java项目搭建、web项目搭建详细图解
转自地址:http://blog.csdn.net/edward0830ly/article/details/8748986
------------------------------maven3常用命令---------------------------
1、常用命令
1)创建一个Project
mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
mvn archetype:generate 固定格式
-DgroupId 组织标识(包名)
-DartifactId 项目名称
-DarchetypeArtifactId ArchetypeId,maven-archetype-quickstart,创建一个Java Project;maven-archetype-webapp,创建一个Web Project
-DinteractiveMode 是否使用交互模式
2)编译源代码
mvn compile
3)编译测试代码
mvn test-compile
4)清空
mvn clean
5)运行测试
mvn test
6)生产站点目录并打包
mvn site-deploy
7)安装当前工程的输出文件到本地仓库
mvn install
8)打包
mvn package
9)先清除再打包
mvn clean package
10)打成jar包
mvn jar:jar
11)生成eclipse项目
mvn eclipse:eclipse
12)查看帮助信息
mvn help:help
13)查看maven有哪些项目类型分类
mvn archetype:generate -DarchetypeCatalog=intrenal
2、标准的Maven项目结构
src/main/java 存放项目的源代码
src/test/java 存放测试源代码
如果要存放一些配置文件,可以再建立一个目录src/main/resource存放,如存放log4j.properties等
------------------------------java项目搭建---------------------------
使用Maven构建一个简单的Java项目
1、进入命令行,执行下面的语句。
mvn archetype:generate -DgroupId=cn.luxh.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
执行完成后,可以看到如下结果:
BUILD SUCCESS,当在前用户目录下(即C:\Documents and Settings\Administrator)下构建了一个JavaProject叫做my-app。
2、进入my-app目录,可以看到有一个pom.xml文件,这个文件是Maven的核心。
1)pom意思就是project object model。
2)pom.xml包含了项目构建的信息,包括项目的信息、项目的依赖等。
3)pom.xml文件是可以继承的,大型项目中,子模块的pom.xml一般都会继承于父模块的pom.xml
4)刚构建的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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.luxh.app</groupId>
<artifactId>my-app</artifactId>
<packaging>jar</packaging>
<version>1.0-SNAPSHOT</version>
<name>my-app</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
</project>

节点元素说明:

<project> pom文件的顶级节点 <modelVersion> object model版本,对Maven2和Maven3来说,只能是4.0.0 <groupId> 项目创建组织的标识符,一般是域名的倒写 <artifactId> 定义了项目在所属组织的标识符下的唯一标识,一个组织下可以有多个项目 <packaging> 打包的方式,有jar、war、ear等 <version> 当前项目的版本,SNAPSHOT,表示是快照版本,在开发中 <name> 项目的名称 <url> 项目的地址 <dependencies> 构建项目依赖的jar <description> 项目的描述

其中由groupId、artifactId和version唯一的确定了一个项目坐标
3、构建的my-app项目结构如下
1)编译源程序,进入命令行,切换到my-app目录,执行命令:mvn clean compile
编译成功,在my-app目录下多出一个target目录,target\classes里面存放的就是编译后的class文件。
2)测试,进入命令行,切换到my-app目录,执行命令:mvc clean test
测试成功,在my-app\target目录下会有一个test-classes目录,存放的就是测试代码的class文件。
3)打包,进入命令行,切换到my-app目录,执行命令:mvc clean package,执行打包命令前,会先执行编译和测试命令
构建成功后,会再target目录下生成my-app-1.0-SNAPSHOT.jar包。
4)安装,进入命令行,切换到my-app目录,执行命令:mvc clean install ,执行安装命令前,会先执行编译、测试、打包命令
构建成功,就会将项目的jar包安装到本地仓库。
5)运行jar包,进入命令行,切换到my-app目录,执行命令:java -cp target\my-app-1.0-SNAPSHOT.jar cn.luxh.app.App
------------------------------web项目搭建---------------------------
1、进入命令行,执行:
mvn archetype:generate -DgroupId=cn.luxh.app -DartifactId=my-web-app -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false
出现一些版本号确认等直接回车就行,构建成功出现下面的提示。
在当前用户目录下,生成的web项目目录结构如下:
2、当然这个空的项目,只有一个index.jsp页面,打包发布运行。
1)在命令行切换到my-web-app目录,执行:mvn package,构建成功后,my-web-app目录下多了一个target目录,在这个目录下会打包成my-web-app.war,把这个war包拷贝到Tomcat的发布目录下就可以运行了。
2)集成Jetty发布运行,需要配置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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>cn.luxh.app</groupId>
<artifactId>my-web-app</artifactId>
<packaging>war</packaging><!--web项目默认打包方式 war-->
<version>1.0-SNAPSHOT</version>
<name>my-web-app Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<finalName>my-web-app</finalName> <pluginManagement>
<!--配置Jetty-->
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
</plugin>
</plugins>
</pluginManagement> </build> </project>

然后执行:mvn jetty:run 就可以在8080端口上访问应用了。
转 maven3常用命令、java项目搭建、web项目搭建详细图解的更多相关文章
- maven3常用命令、java项目搭建、web项目搭建详细图解
http://blog.csdn.net/edward0830ly/article/details/8748986 ------------------------------maven3常用命令-- ...
- maven3常用命令、java项目搭建、web项目搭建详细图解(转)
转自:http://blog.csdn.net/edward0830ly/article/details/8748986 maven3常用命令.java项目搭建.web项目搭建详细图解 2013-0 ...
- maven3常用命令、java项目搭建、web项目搭建
------------------------------maven3常用命令--------------------------- 1.常用命令 1)创建一个Project mvn archety ...
- Spring Boot搭建Web项目常用功能
搭建WEB项目过程中,哪些点需要注意: 1.技术选型: 前端:freemarker.vue 后端:spring boot.spring mvc 2.如何包装返回统一结构结果数据? 首先要弄清楚为什么要 ...
- maven3常用命令\创建Project
转自 http://blog.csdn.net/edward0830ly/article/details/8748986 ------------------------------maven3常用命 ...
- Spring-Boot快速搭建web项目详细总结
最近在学习Spring Boot 相关的技术,刚接触就有种相见恨晚的感觉,因为用spring boot进行项目的搭建是在太方便了,我们往往只需要很简单的几步,便可完成一个spring MVC项目的搭建 ...
- maven构建java项目、web项目
maven构建java项目.web项目 一.mvn构建web项目 1安装mvn(包括path) 2命令:mvn archetype:create -DgroupId=cn.edu.sdau.neat ...
- 【maven】 在 MyEcplise上使用maven搭建Web项目
二.在My Ecplise上使用Maven搭建Web项目 1.新建一个maven项目 2.create一个简单的骨架 3.就像在ecplise中一样设置项目的以下配置 4.新创建的项目结构如下 ...
- 使用 IDEA 创建 Maven Web 项目 (二)- 搭建 WEB 项目框架
转为 Java Web 项目 将上一节中创建的 Maven 项目调整为 WEB 项目结构,步骤如下: 在 main 目录下,添加 webapp 目录. 在 webapp 目录下,添加 WEB-INF ...
随机推荐
- 如何通过SQL语句写入webshell
在web应用场景下,经常会碰到SQL注入场景,如页面能够执行SQL语句,那么可能会有直接通过SQL语句写入webshell的风险,常见的phpmyadmin环境下,通过几个语句可以轻松将一句话木马写入 ...
- UCSC 工具链接
http://hgdownload.cse.ucsc.edu/admin/exe/linux.x86_64/
- NodeJS设置Header解决跨域问题
转载: NodeJS设置Header解决跨域问题 app.all('*', function (req, res, next) { res.header('Access-Control-Allow-O ...
- nth-child()伪类选择器
描述: 伪类:nth-child()的参数是an+b,如果按照w3.org上的描述,写成中文,很可能会让人头晕,再加上笔者的文笔水平有限,所以我决定避开an+b的说法,把它拆分成5种写法共5部分来说明 ...
- 面向忙碌开发者的 Android
面向忙碌开发者的 Android passiontim 关注 2016.11.19 21:41* 字数 4013 阅读 2967评论 2喜欢 92 面向忙碌开发者的 Android 视频教程(Tuts ...
- iOS 关于内购
最近项目的第三方支付导致项目被拒,记录一下关于内购 #import <StoreKit/StoreKit.h> //沙盒测试环境验证 #define SANDBOX @"http ...
- Python接口测试实战5(下) - RESTful、Web Service及Mock Server
如有任何学习问题,可以添加作者微信:lockingfree 课程目录 Python接口测试实战1(上)- 接口测试理论 Python接口测试实战1(下)- 接口测试工具的使用 Python接口测试实战 ...
- Android 测试 之adb shell
一.发送键盘事件: 命令格式1:adb shell input keyevent "value" 其中value以及对应的key code如下表所列: KeyEvent Value ...
- mybatis按datetime条件查询,参数为时间戳时
mybatis按datetime条件查询,参数为时间戳时,如果数据库为2018-1-1 20:22:10, 你的时间戳也为2018-1-1 20:22:10,但却没找到数据.可能是时差导致的.百度修正 ...
- hadoop 基础入门
启动: 格式化节点:bin/hdfs namenode -format 全部启动:sbin/start-dfs:datanode.namenode sbi ...