maven学习三:maven创建普通项目和web项目

一maven创建普通项目

准备工作:参考前面maven学习配置好maven插件及配置,jdk环境配置。

我使用的jdk为1.7 64位,eclipse为4.5 64位(注意jdk为64位要求开发工具必须为64位否则打开不了eclipse)

首先创建Maven Project

maven学习三:maven创建普通项目和web项目_第1张图片

然后选中模式为quickstart

maven学习三:maven创建普通项目和web项目_第2张图片

maven学习三:maven创建普通项目和web项目_第3张图片

maven学习三:maven创建普通项目和web项目_第4张图片

到处maven 创建Java项目成功。运行maven项目为:

maven学习三:maven创建普通项目和web项目_第5张图片

maven学习三:maven创建普通项目和web项目_第6张图片

查看控制台看到Build success表示测试成功。若是测试则 clean test (先清空后测试)

maven常用命令:

mvn compile 编译           mvn test 测试         mvn package 打包        mvn install 安装jar包

小技巧:

选中工程右击Maven--Upate Project(更新工程)/Disable Workspace Resolution(销毁工作空间关联)/Disable Maven Nature(销毁Maven工程,然后转换为普通项目,可以执行Configure--convert to Maven Project再次转换为Maven项目)

二maven创建web项目

首先创建maven Project

maven学习三:maven创建普通项目和web项目_第7张图片

下一步默认配置,使用默认的工作空间,或者你可以自己选择其他的空间

maven学习三:maven创建普通项目和web项目_第8张图片

一般我们都是web开发,所以选择maven-archetype-webapp

maven学习三:maven创建普通项目和web项目_第9张图片

 填写好相应的groupId,artifactId,version等信息

maven学习三:maven创建普通项目和web项目_第10张图片

所有都完成后得到的项目图如下:如下截图表示创建成功。

maven学习三:maven创建普通项目和web项目_第11张图片

此时只是一个maven 的web项目,在eclipse环境下的tomcat中还不能发布,所以,我们转换成eclipse 所支持的web项目,对着项目右键Preferences----->Project Facets点击右边的链接,然后看到java的版本是1.5,Dynamic web model 是2.3

接下来,我们选择Dynamic Web Module打勾(表示我们创建的的是web项目),注意选中的Dynamic web model的版本,你点击不同的版本最右边会显示对应的jdk版本。java版本默认为1.5,实际开发中用的是1.6可以修改为1.6。

到此,一个具有maven依赖的项目已经完成了。接下来,我们按照一些约定来规范我们的程序的开发以及测试等。

1.在main文件夹下新建一个java的文件夹
2.src文件夹下新建文件夹test并在test文件夹下新建java和resources文件夹。

注意创建项目显示形式一种是Package Explorer形式  一种是Navigator形式

maven学习三:maven创建普通项目和web项目_第12张图片maven学习三:maven创建普通项目和web项目_第13张图片

这里一定要注意你创建的是Forder还是Source Folder文件夹,这2中文件夹完全是不同的文件夹,图标显示的也是不同的。这些文件表示Source Folder,maven学习三:maven创建普通项目和web项目_第14张图片而这些文件则是Folder文件。还要注意下你所创建的文件可能创建不成功,查看下显示项目的形式,我本地这里是Packge Explor er可以切换到Navigator Explor形式下显示并创建你的文件。一定要创建如上截图所示表示创建成功。

改变一下java编译后生成的classes目录,我们这里有项目核心的java代码,也有test的测试代码,为了避免冲突和覆盖,所以建议手动更改一下编译后的目录双击每个源文件夹Output dolder

maven学习三:maven创建普通项目和web项目_第15张图片

完成后就是一个完整的Eclipse环境下的Web项目了。目录结构如下
   1.src/mian/java 该目录下存放项目的java文件

   2.src/mian/resources该目录下存放项目的资源文件(如spring的xml等)

   3.src/test/java 该目录下存放项目测试用的java文件

   4.src/test/resources该目录下存放项目测试用的资源文件

到这里整个maven web项目创建成功了,那么我们配置maven web的jetty插件看是否能正常访问。

首先在pom.xml中创建jetty插件如下所示:

maven学习三:maven创建普通项目和web项目_第16张图片

然后选中项目右击"Run As"--"Maven build..."--“jetty:run”查看控制台如下信息表示jetty服务器启动成功

maven学习三:maven创建普通项目和web项目_第17张图片

最后打开我们的浏览器输入:localhost:8080如下信息表示我们maven web项目创建成功并能成功访问。

maven学习三:maven创建普通项目和web项目_第18张图片

maven项目中pom.xml文件介绍:

modelVersion:表示model版本,目前固定为4.0.0; 
groupId:表示本项目组Id,通常是组织包名,如com.deific.mystudy

artifactId:表示本项目的模块名。(模块编程)如mystudy-maven表示是项目mystudy中的mystudy-maven模块,是有关maven学习的模块。

version:表示版本号,如0.0.1-SNAPSHOT,其中第一0表示大版本号,第二个0表示分支版本号,第三个0表示小版本号

packaging:表示打包形式默认为jar,还有war,zip,pom

name:表示项目描述名

url:表示项目地址
dependencies:表示本项目所依赖的所有其他项目(或jar包) 
dependency:表示本项目依赖的某一个依赖项目 
scope:表示这个依赖包的范围,有6个值 
 1、test 测试范围有效,在编译和打包时都不会使用这个依赖  
 2、compile 默认范围,在编译和打包时都会将依赖存储进去  
 3、provided 在编译和测试的过程有效,最后生成war包时不会加入,诸如:servlet-api,因为servlet-api,tomcat等web服务器已经存在了,如果再打包会冲突  
 4、runtime 测试运行的时候依赖,在编译的时候不依赖。如jdbc运行只在运行和测试时用

    5、system 与本地系统相关联,可移植性差

    6、import 导入范围,它只使用在dependencyManagement中表示从其它的pom中导入dependecy的配置

optional:设置依赖是否可选,默认为false,子项目不可继承,为true可继承,必须引入该子项目

exclusions:排除依赖传递列表,用于在使用jar文件冲突时可以排除这个jar文件

dependencyManagement:依赖管理主要用于父模块中,如设置公用的依赖文件,在子模块中继承即可。

bulid:主要用于插件管理。<build><plugins><plugin></plugin></plugins></build>


注意:

当重新创建工程时(workspace)则要重新配置maven,正如使用自己安装的jdk一样,配置maven的installations和User settings,否则默认使用本地。重新安装系统则会丢失。



你可能感兴趣的:(maven)