使用maven构建web项目

Posted 张小贱1987

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用maven构建web项目相关的知识,希望对你有一定的参考价值。

l  新建一个maven项目,注意此处的选择如下图创建一个简单项目,不适用archetype selection。

技术分享

 

 

下一步:

技术分享

 

然后finish,项目就建好了。使用Navigator视图来查看现在建好的目录的结构如下:

技术分享

此时查看Project Facets的配置,关于Project Facets的作用,引用网上的描述如下:

facet 可以理解为:项目的特性,主流 IDE (Eclipse IDEA) 都提供了 facet 的配置。

技术分享

默认的Project Facets的配置如下:

 

技术分享

 

这三个暂时已经足够,不过我改动了版本,如下:

 技术分享

保存后发现,没有生成webinfo文件夹和web.xml等web目录结构。我按照网上的方法尝试之后,都不生效,最终琢磨出的可行的方法是(其实这一步主要是为了生成webinfo文件夹和web.xml等结构,不用这个方法,我觉得自己新建也是一样的):

先如下选择:
技术分享

然后点击apply,然后在切换回去,这时候,Future Configuration Avaiable就出来了,如下:
技术分享

点击Future Configuration Avaiable,如下选择:
技术分享

此时的目录结构就完整了,如下:
技术分享
 
然后看Deployment Assembly,关于Deployment Assembly和output folder的区别,查阅资料后说明如下:
output folder, 其实就是告诉 eclipse,源码编译后,class 文件放哪里,它在任何Java Project中都有。而deployment assembly 配置项却只存在于 Java web project 中。
技术分享
所以说deployment assembly 是用来配置web项目的,如果使用tomcat,你会发现deployment assembly 中配置的要生成的class文件和jar包没有出现在项目中对应的目录下生成,这是没有问题的,因为它生成到了tomcat配置的目录中,如在我的电脑中,是:E:\eclipseworkspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp0下面的目录。
 
在我做了上述的Project Facets配置之后,Deployment Assembly配置如下:

 

技术分享

 /WebContent那部分是不对的,我要使用的目录是src/main/webapp,所以修改配置如下:

 

技术分享

此时,一个web项目就配置完了。src/main/java下的内容,将会被同步到web-info/classes下,我只需在整个目录下写java文件。src/main/webapp下面的文件会被同步到web目录的根目录下,我在整个目录下可以定义jsp文件。

现在我加入一个jsp文件如下:

技术分享

技术分享

 

发现有报错,是因为没有在build path中引入tomcat的包。引入后解决问题。然后启动服务。输入网址访问成功,如下:


技术分享
















以上是关于使用maven构建web项目的主要内容,如果未能解决你的问题,请参考以下文章

使用Eclipse + Maven 构建Java Web 项目

转构建maven web项目

java maven项目跟web项目区别

使用maven构建web项目

MyEclipse10.0构建maven web项目

使用Maven构建web项目