乐趣区

Eclipse创建Maven管理的Web项目

动态的 web 项目


部署映射
项目名 右键,properties 的 Deployment Assembly,这是部署的映射,
jar 包在 lib 目录里、src 映射到 WEB-INF/classes 中、/WebContent 映射到 / 根目录中。

--------------------------------------------------------------------------------------------

普通 web 项目


直接创建一个新的 Dynamic Web Project
Target runtime:服务器的运行环境
Dynamic Web module version:动态 web 模块的版本,即 JavaEE 里的 servlet 版本
下一步
src 编写完后默认的输出到的文件中(即 buildclasses)
下一步
根目录、web 资源目录、及可选项是否创建.xml 文件,也可以创建项目后,
项目右键 在 JavaEE Tools 中也可以生成.xml 文件
完成
在 Eclipse 的 Window 的 Show View 中的 Navigator 可以显示隐藏文件,如.classpath 和.projet 文件,build 下的 classes 文件夹等
(其中 MFTA-INF 是自动生成的东西,可以删除)

--------------------------------------------------------------------------------------------

maven web 项目(注意网络)


注意每一步更新项目,项目右键 Maven,Update Project,快捷键 Alt+F5
① 创建一个简单的 Maven 项目,再配置成 web 项目
创建一个新的 Maven Project,选择 Create a simple project,创建一个简单的项目
next Group Id:一般公司域名的反写,Artifact:项目名
finnish
后续步骤:
步骤 1:这时候创建的项目,其 JDK 的 1.5,可以在 pom.xml 文件中进行配置
在 properties 标签内配置

在 maven 官网的 Maven Plugins 中的 compiler(插件)里,Example 中 有个 -source -target 里有样例

步骤 2:修改打包方式 pom.xml 文件中

步骤 3:在自动生成的 src/main/webapp 下手动创建 WEB-INF 文件夹
WEB-INF 下新建 web.xml 文件
注意:maven 的 web 项目的 WEB-INF 下不用新建 classes 和 lib 目录

步骤 4:添加服务器运行环境(主要是 servlet-api.jar)
第一种,项目名右键的构建路径里的 Add Library 中的 server runtime 直接引入本地的服务器
第二种,在 pom 文件中使用依赖引入 servlet 相关 jar 包
dependencies 标签来管理依赖
(provided 是指这个 jar 包由本地服务器提供,打包时不会打包,默认是 compile)

步骤 5:注意映射 properties 的 Deployment Assembly,这里不用修改了

② 使用 Eclipse 中自带的 Maven 的 web 骨架,来创建项目,再进行配置修改
创建 maven 项目,不选择创建简单项目,进入选择骨架的页面,选择 maven-archetype-webapp,下一步,填写组 ID 和项目名,完成。
默认 jdk 是 1.5,默认版本是 2.3
后续步骤:
步骤 1:pom 中修改 jdk 版本,与上同理,在自动 src/main/webapp/WEB-INF 下生成的 index.jsp 删掉

步骤 2:发现 src 目录显示不全,在构建路径里的 Configure Build Path 里的 Order and Export 下,选中缺失的,Down 下移就会显示出来

步骤 3:修改 WEB-INF 下的 web.xml 文件中的容器版本,可以直接复制之前普通 web 项目的该文件

步骤 4:properties 中的 Project Facets 的动态页面模型的版本是 2.3,这里不能改,因为这个配置是骨架写在配置文件中的,所以在 Navigator 的视图下,查看隐藏的.settings 文件夹下的 project.facet.core.xml 中 facet=”jst..web” 对应行的 version 改为 3.1

步骤 5:再添加 web 运行环境,同理上面的步骤 4

③ 创建简单的 maven 的 java 项目,用 Eclipse 进行转换成 web 项目
步骤 1:更改 jdk 版本,同上

步骤 2:项目名右键 Configure 的,选择 Conversation to Faceted From,再勾选动态 web 项目,注意它的版本调整成 3.1,应用并关闭。

步骤 3:上一步自动生成的 WebContent 目录下的 WEB-INF 下没有 web.xml 文件,需要进行创建或复制其他的 xml 文件,这里的 lib 目录不需要删掉,因为映射

步骤 4:在 pom.xml 中设置打包方式为 war

步骤 5:把 WEB-INF 复制到 webapp 目录下(让其目录结构符合 Tomcat 的规范),然后就可以删除 WebContent 目录,最后把映射,右键 properties 的 Deployment Assembly,将 Source 下 WebContent 的所在行删除(因为已经删除了嘛)


创建完成 web 项目后,在 eclipse 中部署项目,若是用的从别处导来的项目,
会发现项目名后会有一个小括号,这是因为导入时项目打包后用的时默认的名字,
虽然 Import 导进来时还是相同的名字,但执行时项目名则是括号内的名字

maven 项目用骨架创建的在 pom 中设置了 build 标签,设置打包后的名字

没用骨架创建的 maven 项目要手动配置这个 finalname 属性

退出移动版