------------------------------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)下构建了一个Java Project叫做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端口上访问应用了。

maven 创建project的更多相关文章

  1. Eclipse 使用maven创建Dynamic Web Project

    今天看到spring的官网首页已经没有下载连接了,建议使用maven构建spring项目.虽然maven已经不是新技术,但是这个我还没用过,谷歌走起! 通常创建项目都是用Eclipse,前几年还是My ...

  2. 创建一个maven web project

    几经周折总算是找到了和高杨学长一样的web  project的方法.感谢学长的一语点醒.我之前以为,既是maven又是web project的项目得要是通过dynamic web project转换到 ...

  3. Maven学习一:用Maven创建Java Project

    转自:http://blog.csdn.net/lfsfxy9/article/details/9399093  Maven环境配置只是入门的基础,现在要通过Maven基本命令生成一个Java Pro ...

  4. spring boot:创建一个简单的web(maven web project)

    1.新建一个maven web project; 2.在pom.xml文件中添加相应的依赖包: 3.新建一个HelloController请求控制类: 4.编写index.jsp页面: 5.编写启动类 ...

  5. Eclipse中使用Maven创建web项目

    一.创建一个Maven项目 1.Eclipse中用Maven创建项目 上图中点击next 2.继续next 3.选maven-archetype-webapp后,next 4.填写相应的信息,Pack ...

  6. 如何用Maven创建web项目

    使用eclipse插件创建一个web project 首先创建一个Maven的Project如下图 我们勾选上Create a simple project (不使用骨架) 这里的Packing 选择 ...

  7. Eclipse+Maven创建webapp项目<一>(转)

    还在为jar下载而烦恼吗?还在为jar依赖关系而烦恼吗?还在为jar冲突而烦恼吗?强大的maven项目管理工具来拯救你们呢?自动下载jar,自动下载jar依赖包.你什么都不用做,只需要在中央仓库中co ...

  8. (转)如何用Maven创建web项目(具体步骤)

    原文链接:http://blog.csdn.net/chuyuqing/article/details/28879477 使用eclipse插件创建一个web project 首先创建一个Maven的 ...

  9. Eclipse+Maven创建webapp项目

    Eclipse+Maven创建webapp项目<一> 1.开启eclipse,右键new-->other,如下图找到maven project 2.选择maven project,显 ...

随机推荐

  1. 机器学习进阶-案例实战-停车场车位识别-keras预测是否停车站有车

    import numpy import os from keras import applications from keras.preprocessing.image import ImageDat ...

  2. 机器学习进阶-图片基本处理-ROI区域 1.img[0:200, 0:200]截取图片 2.cv2.split(对图片的颜色通道进行拆分) 3. cv2.merge(将颜色通道进行合并) 4 cur_img[:, :, 0] = 0 使得b通道的颜色数值为0

    1. 截取图片的部分区域img[0:200, 0:200], 读入的图片是ndarray格式 2. b, g, r = cv2.split(img)  # 对图片的颜色通道进行拆分 3.img = c ...

  3. JEECG前后端分离UI框架实战抢先体验(ng2-admin+Angular4+AdminLTE+WebStorm)

    JEECG前后端分离UI框架 (ng2-admin+Angular4+AdminLTE) 关键词: ng2-admin.Angular4.AdminLTE.Nodejs.Jeecg JEECG紧跟技术 ...

  4. hive基础操作

    hive --version  查看hive的版本 hive -S -e "set" | grep auto  ##在shell下可以查找属性的状态.小技巧.

  5. 26个Jquery使用小技巧(转)

    下面列出了一些Jquery使用技巧.比如有禁止右键点击.隐藏搜索文本框文字.在新窗口中打开链接.检测浏览器.预加载图片.页面样式切换.所有列等 高.动态控制页面字体大小.获得鼠标指针的X值Y值.验证元 ...

  6. NSMapTable

    跟NSDictionary用法差不多,不过区别是NSMapTable可以设置内存选项,例如可以设置key跟value的内存属性(weak/strong),从而避免内存泄露. 例如这个+ weakToW ...

  7. 1.13.Mark1

    [经济学人]双语阅读:律师事务所 标价更高 收益更少 Business 商业报道   Law firms 律师事务所   Charging more, getting less 标价更高,收益更少 L ...

  8. WPF 中关于 DataTemplateSelector 类的应用

    MSDN的解释: 提供一种根据数据对象和与该数据绑定的元素来选择数据模板 DataTemplate 的方法. 示例代码: <Window x:Class="WpfApplication ...

  9. C# Excel导数据

    遇到的几个坑,记录一下. 隐藏表,隐藏行,隐藏列, 单元格合并 => 拆分并填充内容, 显示隐藏列,结果那个列 还是不显示出来,拖动旁边的列也不显示. 结果在旁边的列上,按左右箭头键就出来了,也 ...

  10. oracle创建数据库步骤

    1.oracle安装成功后, cmd sqlplus,然后system/orcl as sysdba 2.更改scott的密码,scott的默认密码是tiger SQL> alter user ...