Maven学习总结——构建java项⽬和javaweb项⽬
转⾃:
⼀、构建Jave项⽬
1.1、创建JaveProject
1、使⽤mvnarchetype:generate命令,如下所⽰:
2、使⽤mvnarchetype:create命令(⼀些⾼版本的maven已经不⽀持create了,但是generate还是可以⽤的),如下所⽰:
使⽤”mvnarchetype:create”命令创建⼀个java项⽬的过程如下图所⽰:
BUILDSUCCESS就表⽰项⽬构建成功,当在前⽤户⽬录下(即C:DocumentsandSettingsAdministrator)下构建了⼀个Java
Project叫做myapp。
mvnarchetype:generate-DgroupId=-DartifactId=myapp-DarchetypeArtifactId=maven-archetype-quickstart-DinteractiveMode
mvnarchetype:create-DgroupId=-DartifactId=myapp-DarchetypeArtifactId=maven-archetype-quickstart-DinteractiveMode=
构建好的Java项⽬的⽬录结构如下:
可以看到,Maven帮我们创建的项⽬是⼀个标准的Maven项⽬,不过⽬前Maven只是帮我们⽣成了src/main/java(存放项⽬的源代码)和
src/test/java(存放测试源代码)这两个⽬录,但实际项⽬开发中我们⼀般都会有配置⽂件,例如ties,所以我们还需要⼿动创
建src/main/resources(存放项⽬开发中⽤到的配置⽂件,如存放ties等)和src/test/resources(存放测试时⽤到的配置⽂
件),如下图所⽰:
然后我们就可以将创建好的myapp项⽬导⼊到Eclip中进⾏开发了,如下图所⽰:
1.2、JavaProject的⽂件说明
通过Maven构建的JavaProject,在项⽬的根⽬录下都会存在⼀个⽂件,进⼊myapp⽬录,可以看到有⼀个⽂件,
这个⽂件是Maven的核⼼。如下图所⽰:
1、pom意思就是projectobjectmodel。
2、包含了项⽬构建的信息,包括项⽬的信息、项⽬的依赖等。
3、⽂件是可以继承的,⼤型项⽬中,⼦模块的⼀般都会继承于⽗模块的
⽂件的内容如下:
⽂件的节点元素说明:
<project> pom⽂件的顶级节点
<modelVersion> objectmodel版本,对Maven2和Maven3来说,只能是4.0.0
<groupId> 项⽬创建组织的标识符,⼀般是域名的倒写
<artifactId> 定义了项⽬在所属组织的标识符下的唯⼀标识,⼀个组织下可以有多个项⽬
<version> 当前项⽬的版本,SNAPSHOT,表⽰是快照版本
<packaging> 打包的⽅式,有jar、war、ear等
<name> 项⽬的名称
<url> 项⽬的地址
<properties> 属性配置,⽐如:<Encoding>UTF-8</Encoding>
<dependencies> 构建项⽬依赖的jar
其中由groupId、artifactId和version唯⼀的确定了⼀个项⽬坐标
1.3、使⽤Maven编译-测试-打包-安装项⽬
1.3.1、编译
xsi:schemaLocation="/POM/4.0.0/xsd/">
编译源程序,进⼊命令⾏,切换到myapp⽬录,执⾏命令:mvncleancompile,如下图所⽰:
编译成功,在myapp⽬录下多出⼀个target⽬录,targetclass⾥⾯存放的就是编译后的class⽂件,如下图所⽰:
1.3.2、测试
进⼊命令⾏,切换到myapp⽬录,执⾏命令:mvncleantest,如下图所⽰:
测试成功,在myapptarget⽬录下会有⼀个test-class⽬录,存放的就是测试代码的class⽂件,如下图所⽰:
1.3.3、打包
进⼊命令⾏,切换到myapp⽬录,执⾏命令:mvncleanpackage,执⾏打包命令前,会先执⾏编译和测试命令,如下图所⽰:
构建成功后,会在target⽬录下⽣成包,如下图所⽰:
1.3.4、安装
进⼊命令⾏,切换到my-app⽬录,执⾏命令:mvncleaninstall,执⾏安装命令前,会先执⾏编译、测试、打包命令,如下图所⽰:
构建成功,就会将项⽬的jar包安装到本地仓库,如下图所⽰:
⼆、构建JavaWeb项⽬
1、使⽤mvnarchetype:generate命令,如下所⽰:
使⽤”mvnarchetype:generate”命令创建⼀个javaWeb项⽬的过程如下图所⽰:
mvnarchetype:generate-DgroupId=-DartifactId=my-WebApp-DarchetypeArtifactId=maven-archetype-webapp-DinteractiveMode
2、使⽤mvnarchetype:create命令,如下所⽰:
创建好的JavaWeb项⽬的⽬录结构如下:
创建好的JavaWeb项⽬中⽬前只有src/main/resources⽬录,因此还需要⼿动添加src/main/java、src/test/java、
src/test/resources
如下图所⽰:
接着我们就可以将创建好的JavaWeb导⼊Eclip中进⾏开发了,如下图所⽰:
mvnarchetype:create-DgroupId=-DartifactId=myWebApp-DarchetypeArtifactId=maven-archetype-webapp-DinteractiveMode
2.2、使⽤Maven打包发布Web项⽬
Maven帮我们创建的JavaWeb项⽬是⼀个空的项⽬,只有⼀个页⾯,我们使⽤Maven将Web项⽬打包发布运⾏。
在命令⾏切换到myWebApp⽬录,执⾏:mvnpackage,构建成功后,myWebApp⽬录⽬录下多了⼀个target⽬录,在这个⽬录下
会打包成myWebApp⽬录.war,把这个war包拷贝到Tomcat的发布⽬录下就可以运⾏了。如下图所⽰:
打包成功,在myWebApptarget⽬录下⽣成了⼀个⽂件,如下图所⽰:
将放到tomcat服务器中运⾏,如下图所⽰:
运⾏效果如下:
除了使⽤Tomcat服务器运⾏Web项⽬之外,我们还可以在Web项⽬中集成Jetty发布运⾏,⾸先在⽂件中配置Jetty插件,如下:
xsi:schemaLocation="/POM/4.0.0/maven-v4_0_">
打开命令⾏窗⼝,切换到myWebApp⽬录,然后执⾏:mvnjetty:run启动Jetty服务器,如下图所⽰:
接着就可以在8080端⼝上访问应⽤了。如下图所⽰:
三、Maven创建项⽬的命令说明
mvnarchetype:create或者mvnarchetype:generate 固定写法
-DgroupId 组织标识(包名)
-DartifactId 项⽬名称
-DarchetypeArtifactId 指定ArchetypeId,maven-archetype-quickstart,创建⼀个Java
Project;maven-archetype-webapp,创建⼀个WebProject
-DinteractiveMode 是否使⽤交互模式
archetype是mvn内置的⼀个插件,create任务可以创建⼀个java项⽬⾻架,DgroupId是软件包的名称,DartifactId是项⽬
名,DarchetypeArtifactId是可⽤的mvn项⽬⾻架,⽬前可以使⽤的⾻架有:
maven-archetype-archetype
maven-archetype-j2ee-simple
maven-archetype-mojo
maven-archetype-portlet
maven-archetype-profiles(currentlyunderdevelopment)
maven-archetype-quickstart
maven-archetype-simple(currentlyunderdevelopment)
maven-archetype-site
maven-archetype-site-simple
maven-archetype-webapp
每⼀个⾻架都会建相应的⽬录结构和⼀些通⽤⽂件,最常⽤的是maven-archetype-quickstart和maven-archetype-webapp⾻架。
maven-archetype-quickstart⾻架是⽤来创建⼀个JavaProject,⽽maven-archetype-webapp⾻架则是⽤来创建⼀个JavaWeb
Project。
本文发布于:2022-11-27 14:47:45,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/31626.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |