博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转】maven3常用命令、java项目搭建、web项目搭建详细图解
阅读量:7119 次
发布时间:2019-06-28

本文共 4244 字,大约阅读时间需要 14 分钟。

hot3.png

------------------------------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说明

  
4.0.0
  
cn.luxh.app
  
my-app
  
jar
  
1.0-SNAPSHOT
  
my-app
  
http://maven.apache.org
  
    
      
junit
      
junit
      
3.8.1
      
test
    
  

    点元素说明:    

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

     其中由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。

  
4.0.0
  
cn.luxh.app
  
my-web-app
  
war
  
1.0-SNAPSHOT
  
my-web-app Maven Webapp
  
http://maven.apache.org
  
    
      
junit
      
junit
      
3.8.1
      
test
    
  
  
    
my-web-app
        
    
      
        
         
org.mortbay.jetty
            
maven-jetty-plugin
        
      
      
  

    然后执行:mvn jetty:run 就可以在8080端口上访问应用了。

转载于:https://my.oschina.net/zimingforever/blog/266028

你可能感兴趣的文章
【BZOJ】1708: [Usaco2007 Oct]Money奶牛的硬币
查看>>
iOS 仿射变换(CGAffineTransform)
查看>>
第一章:docker安装
查看>>
【TCP/IP指南(卷I)读书笔记】第一篇 TCP/IP概述与背景知识
查看>>
Linux虚拟机上安装
查看>>
js 高级
查看>>
理解操作系统相关知识
查看>>
Java重定向IO
查看>>
JDK源码阅读(三):ArraryList源码解析
查看>>
创业初期和员工一起喝酒的CEO,融资后怎么就爱上“996”了
查看>>
iOS怎样获取设备唯一标识符
查看>>
ASP.NET MVC 下拉框的传值的两种方式
查看>>
流文件_从网络中获取文件
查看>>
关不掉之以假乱真
查看>>
NOIP双栈排序
查看>>
tomcat 配置自签名ssl证书
查看>>
原型模式
查看>>
P3153 [CQOI2009]跳舞
查看>>
啥?客户叫在DataGridView的左上角添加CheckBox?
查看>>
第一次博客作业 <西北师范大学| 周安伟>
查看>>