Maven学习笔记-03-Eclipse和Maven集成
本文使用 Eclipse 集成 Maven,并创一个基于 maven的web工程
一 环境版本信息
本文使用的版本信息如下:
Eclipse Version: Mars.1 Release (4.5.1)
Maven Version: Apache maven 3.2.1
Jave Version : 1.7.0_25+
二 创建一个Web项目
1)打开eclipse 选择 File --> New --> Other -->Maven -->Maven Projet
2)选择maven-archetype-webapp
3)填写项目信息
4)生产的Web项目包结构
4.1)把项目转为 Dynamic Web Module,在项目上点击右键,选择属性,然后选择Project facets,然后点击Convert to faceted form...
勾选Dynamic Web Module,选择3.0,表示支持servlet3.0
勾选Java,选择1.7或更高的jdk版本
但是Eclipse会报 "Cannot change version of project facet Dynamic Web Module to 3.0"异常。需要找到工程项目的硬盘目录,打开项目下的 .setting文件夹,如下图:
找到 .setting文件夹内的org.eclipse.wst.common.project.facet.core.xml文件,文件格式大致如下:
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
<fixed facet="wst.jsdt.web"/>
<installed facet="java" version="1.5"/>
<installed facet="jst.web" version="2.3"/>
<installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>
直接修改jst.web对应的version即可,比如: <installed facet="jst.web" version="3.0"/> ,表示支持 servlet 3.0版本。修改后在进入界面如下图所示:
4.2)工具只生成了一个叫 src/main/resources的source folder,需要手工添加 src/main/java、src/test/java和src/test/resources 三个source folder,在项目上右键 New -->Source Folder,输入folder name即可。但项目会报 The folder is already a source folder的错误。一共需要以下四个目录:
src/main/java
src/main/resources
src/test/java
src/test/resources
注意:在执行此步之前,需要点击项目,右键鼠标选择 Properties --> Java Build Path --> Source 会看到src/main/java已存在,但是Missing。所以只需要创建目录,Source Floder就出现了。
解决方法:是哪一个 Folder报Missing错误就把它删除掉,然后在重新手工添加 ,比如 src/main/java。
4.3)配置部署的程序Deployment Assembly,删掉test的那两项,test的程序发布的时候不需要,添加maven的依赖库,发布的时候可以发布到lib目录中,添加/src/main/webapp为部署的根目录
5)配置tomcat8,发布运行项目
如果使用的是MyEclipse创建的Maven Web工程,使用了默认的artifactId模板,那么创建的项目会出现空格,那么可以按照如下方式,修改模板的配置。
6) Eclipse 配置Maven命令
在项目右击选择 Run As -> Run Configurations ...
在弹出的窗口,在Goals写入必要的Maven命令 jetty:run,比如运行嵌入式服务器Jetty, 对应的Maven命令 mvn jetty:run
补充资料:
1, 内置Servlet Container
Java服务器支持的Servlet 版本号和Java版本号之间的关系。
Name | Servlet Version | Java Version |
---|---|---|
Tomcat 8 |
3.1 |
Java 7+ |
Tomcat 7 |
3.0 |
Java 6+ |
Jetty 9.3 |
3.1 |
Java 8+ |
Jetty 9.2 |
3.1 |
Java 7+ |
Jetty 8 |
3.0 |
Java 6+ |
Undertow 1.3 |
3.1 |
Java 7+ |
Maven学习笔记-03-Eclipse和Maven集成的更多相关文章
- Maven学习笔记(1)之安装Maven
此笔记是学习Maven时自己摸索+各种百度而来,并非全部原创,望与各位一同学习,勿拍~勿拍~ 安装步骤 1.下载Maven的最新版本,地址:http://maven.apache.org/downlo ...
- Maven学习笔记(一)—— Maven基础
一.Maven介绍 1.1 什么是maven? Maven是apache下的一个纯Java开发的开源项目,它是一个项目管理工具,使用maven对Java项目进行构建.依赖管理. 1.2 什么是项目构建 ...
- Maven学习笔记【1】 -- Maven简介
本文主要讲Maven的基础知识. 一 什么是Maven? Maven是一个项目管理工具.Maven提供了一个项目对象模型(POM)文件的新概念来管理项目的构建,相关性和文档.最强大的功能就是能够自动下 ...
- Maven学习笔记之第一个Maven项目(Linux)
Maven是Apache旗下的管理Java项目jar包的项目管理工具,有了它可以很方便构建和管理我们的Java项目,你不必在互联网上逐个查找你需要的第三方jar包,你只需在maven reposito ...
- Maven学习笔记-03-Eclipse下maven项目在Tomcat7和Jetty6中部署调试
现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...
- Maven学习笔记-04-Eclipse下maven项目在Tomcat7和Jetty6中部署调试
现在最新的Eclipse Luna Release 已经内置了Maven插件,这让我们的工作简洁了不少,只要把项目直接导入就可以,不用考虑插件什么的问题,但是导入之后的项目既可以部署在Tomcat也可 ...
- Maven 学习笔记(二)
前面一文——Maven 学习笔记(一)中已经提到了 pom 的大部分配置,Maven 本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给创建来完成,每一个任务都会对应一个插件 ...
- mybatis学习笔记(五) -- maven+spring+mybatis从零开始搭建整合详细过程(附demo和搭建过程遇到的问题解决方法)
文章介绍结构一览 一.使用maven创建web项目 1.新建maven项目 2.修改jre版本 3.修改Project Facts,生成WebContent文件夾 4.将WebContent下的两个文 ...
- [struts2学习笔记] 第二节 使用Maven搞定管理和构造Struts 2 Web应用程序的七个步骤
本文地址:http://blog.csdn.net/sushengmiyan/article/details/40303897 官方文档:http://struts.apache.org/releas ...
- (转)Maven学习总结(七)——eclipse中使用Maven创建Web项目
孤傲苍狼只为成功找方法,不为失败找借口! Maven学习总结(七)——eclipse中使用Maven创建Web项目 一.创建Web项目 1.1 选择建立Maven Project 选择File -&g ...
随机推荐
- 怎么在ReactNative里面使用Typescript
今天来搞一搞怎么搭建一个可以使用Typescript的ReactNative环境好吧,一句废话不多说,直接开始好吧 1.全局安装create-react-native-app yarn global ...
- python之递归与二分法
1. 递归 自己调用自己 递归的入口(参数) 和 出口(return) 树形结构的遍历 import os def func(lujing, n): lst = os.listdir(lujing) ...
- layer插件layer.photos()动态插入的图片无法正常显示
layer插件layer.photos()动态插入的图片无法正常显示,点击后面插入的图片,显示的是之前的图片列表,再次点击又是正常 有朋友遇到同样的问题 http://fly.layui.com/ji ...
- cors解决跨域问题
在作前后端分离的时候,我们总是要做跨域处理. 使用 express 框架搭建项目的时候可以设置如下: app.use(function (req, res, next) { res.setHeader ...
- (后端)Java跨域过滤器
private FilterConfig config = null; @Override public void init(FilterConfig config) throws ServletEx ...
- Node 编码规范(优秀是一种习惯)
编码规范 空格与格式 1. 缩进 采用2个空格缩进,而不是tab缩进. 空格在编辑器中与字符是等宽的,而tab可能因编辑器的设置不同.2个空格会让代码看起来更紧凑.明快. 2. 变量声明 永远用var ...
- Centos7系统特性之systemd
1.centos系列的系统启动流程(内核级别的启动流程): POST(加电自检)---> Boot Sequence(BIOS)---> Boot loader (MBR)---> ...
- ELK-elasticsearch-6.3.2部署
参考博客:linux下ElasticSearch.6.2.2集群安装与head.Kibana.X-Pack..插件的配置安装 参考博客:ELK5.5.1 插件安装实践纪要(head/bigdesk/k ...
- Sql注入的分类:数字型+字符型
Sql注入: 就是通过把SQL命令插入到Web表单提交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令.通过构造恶意的输入,使数据库执行恶意命令,造成数据泄露或者修改内容等,以 ...
- 在excel中将缺失数据全部用0补齐
先ctrl+H ,出现如下对话框 点击“定位”,选择“空值” 在表格中空的位置上编辑栏输入0,CTRL+ENTER,即可将缺失数据全部用0补齐.