文档章节

实践二:eclipse中新建maven项目

一枚Sir
 一枚Sir
发布于 2014/11/21 16:07
字数 1024
阅读 55
收藏 1

行业解决方案、产品招募中!想赚钱就来传!>>>

maven是个项目管理工具,集各种功能于一身,下面介绍maven web项目在eclipse种的配置,并于tomcat集成。配置成功后,可以跟一般的web项目一样调试。

 

一、准备条件

1、安装下载jdk

     这里以jdk1.7为例

 

2、安装eclipse

     到eclipse官网下载 Eclipse IDE for Java EE Developers版本的eclipse

     http://www.eclipse.org/

 

3、安装tomcat6

 

4、安装maven

 

5、安装eclipse maven插件

 

二、配置

1、在eclipse中配置jdk安装位置,tomcat安装位置,maven安装位置,为tomcat指定jdk

     在此不详述

2、在eclipse中新建一个maven项目

2-1、新建一个maven项目,选择create a simple project ...

    

 

 

2-2、

点击Next,进入下一个

 

在此窗口下填写group id,artifact id,可以随便写一个,在Packaging中选择war类型

点击下一步,在以下步骤中一直next,直到最后点击finish

 

2-3、

右击项目,选择properites,打开以下对话框

 

 

在此界面右边导航栏选中 Project Facets,点击超链接Convert Faceted from,进入以下界面

2-4、

 

 

 

在Configuration中选择custom

在下方的Project Facet的Dynamic Web Module中选择2.5版本

在java中选择1.6

注意:这些选择可能根据tomcat版本变化而变化,就tomcat6来说选择以上选项是可以的

        此步骤非常重要,只有操作了此步骤,右侧导航栏才会有Deployment Assembly 链接

2-5

接下来点击右边面板的Runtime面板

 

可以看到下方中有tomcat,如果没有,则点击下面的new,新建一个,新建后选中复选框,然后apply,ok

 

 

2-6、

在项目属性面板中的作部导航栏选择Deployment Assembly选项,在右边Web Deployment Assembly

如果看到以下的图示,那么配置就完成了

 

这里解释一下以上文件夹

src/main/java

该文件夹是存放java源码的,发布项目时会将该文件夹下的class文件复制到WEB-INF/classes目录下

 

src/main/resources

该文件夹一般放置配置文件,如xml,properties文件等,其实也可以放置java文件,只是一种约定罢了,发布项目时

该文件夹的文件也会复制到WEB-INF/class中

至于test,有些类似,只不过这些是测试代码,用过maven的应该会知道这一点

 

src/main/webapp

maven中约定是把该文件夹当成是普通web项目中的WebRoot目录,看看右边的deploy path,发布项目时

是发布到根目录/了。该文件夹在建成的maven web项目中,在其内尚没有WEB-INF/classes,WEB-INF/lib文件夹

需要手工建立

 

注意:有时候由于某种原因,你打开的以上视图可能是下面这样的,

 

其实,这样也是可以运行项目,调试项目的,但是,如果你运行该项目的pom.xml文件时就会报错,为什么呢,

因为maven会把src/main/webapp文件当成是普通web项目中的WebRoot,而该你的配置里面(上图)却

没有配置,故而会报错。

怎么办呢,分2步

1、选中 WebContent,remove掉它

2、新建一个,Source文件夹为src/main/webapp,deploy path为 /

点击apply,ok即可。

 

最后还必须将maven库映射到WEB-INF/lib下,具体操作如下,点击add按钮,进入下图

 

选择java build path entries,点击next,进入下图

 

 

 

选择Maven Dependencies,点击finish,最终如下图


 

 

如果不把Maven Dependencies映射到WEB-INF/lib,则在服务端如servlet中用到maven中的库时,则会提示找不到类(虽然你在编写代码时没有红xx,但是运行程序时却会找不到类)

 

 

 

三、运行

在eclipse的server视图中添加你的项目,右键选择的tomcat服务器,选择add and remove,添加刚才新建的web工程,效果如下图

在src/main/java中建立一个servlet,在src/main/webapp中建立一个jsp

 

启动tomcat,访问你的servlet和jsp,在servlet中你可以定断点,可以调试。

一枚Sir
粉丝 119
博文 209
码字总数 350904
作品 0
朝阳
架构师
私信 提问
加载中
请先登录后再评论。
浅入浅出Android(003):使用TextView类构造文本控件

基础: TextView是无法供编辑的。 当我们新建一个项目MyTextView时候,默认的布局(/res/layout/activity_main.xml)中已经有了一个TextView: <TextView 运行效果如下: 修改其文本内容...

樂天
2014/03/22
664
1
我的架构演化笔记 功能1: 基本的用户注册

“咚咚”,一阵急促的敲门声, 我从睡梦中惊醒,我靠,这才几点,谁这么早, 开门一看,原来我的小表弟放暑假了,来南京玩,顺便说跟我后面学习一个网站是怎么做出来的。 于是有了下面的一段...

强子哥哥
2014/05/31
976
3
5分钟 maven3 快速入门指南

前提条件 你首先需要了解如何在电脑上安装软件。如果你不知道如何做到这一点,请询问你办公室,学校里的人,或花钱找人来解释这个给你。 不建议给Maven的服务邮箱来发邮件寻求支持。 安装Mav...

fanl1982
2014/01/23
1.2W
7
代码生成器--Codgen

Codgen是一个基于数据库元数据模型,使用freemarker模板引擎来构建输出的代码生成器。freemarker的数据模型结构通常来说都是一个Map树状结构模型,codgen也不例外,它的数据模型这棵树的根节...

黄天政
2013/01/29
1.4W
2
研究虚拟机--Jikes RVM

Jikes研究虚拟机(Jikes Research Virtual Machine,简称Jikes RVM)是一种成熟的用于执行Java程序的虚拟机,其早期版本与当前版本分别在通用公共许可证(CPL)与Eclipse公共许可证(EPL)下开...

匿名
2013/02/13
1.1K
0

没有更多内容

加载失败,请刷新页面

加载更多

Azure Application Gateway(一)对后端 Web App 进行负载均衡

一,引言   今天,我们学习一个新的知识点-----Azure Application Gateway,通过Azure 应用程序网关为我么后端的服务提供负载均衡的功能。我们再文章头中大概先了解一下什么是应用程序网关...

osc_lc4icfkt
34分钟前
8
0
WoLai(我来) 注册码 ——国内版 notion 【笔记】

注册码: SQGYG23 ❤ W4T9PKP JLTHNJP KMTXK7P JDHKJEM KRJXX5P 6M7PPAP DEGLMG3 N3BZMRI 87BR22I GSIWGWP GNGBNTI QA8URIM UDUV9VM IHKJA7P MD9ZA3M 3XR67ZI TBUP9JX TI4TYMM 注册完了可以把......

osc_c05lkk3u
35分钟前
21
0
2020hdu多校第二场比赛及补题

这一场我们队只A了一题 1010 Lead of Wisdom 直接爆搜,但是T了好几发,剪了下枝 如果一个物品的a,b,c,d都比不上另外一个同种物品的a,b,c,d,那这个物品就可以直接淘汰掉了 #include<iostrea...

osc_usgpahnw
36分钟前
21
0
为什么Java有瞬态字段? - Why does Java have transient fields?

问题: 为什么Java有瞬态字段? 解决方案: 参考一: https://stackoom.com/question/3opS/为什么Java有瞬态字段 参考二: https://oldbug.net/q/3opS/Why-does-Java-have-transient-fields...

富含淀粉
36分钟前
16
0
轻松搭建CAS 5.x系列(6)-在CAS Server上增加OAuth2.0协议

概述说明 CAS Server默认搭建出来,客户端程序只能按照CAS自身的协议接入。CAS的强大在于,有官方的插件,可以支持其他的协议。本章节就让CAS Server怎么增加OAuth2.0的登录协议。 安装步骤 ...

osc_inj0cicw
38分钟前
13
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部