在ecplise中创建一个maven工程
1.我们首先需要在Ecplise中配置maven环境,详情见我的博客:https://www.cnblogs.com/wyhluckdog/p/10277278.html
2.maven project:将来项目拆分时,需要创建一个这样的工程。
maven-module:crm-service crm-web,分模块进行开发。如果你只负责工程的一块时,你只需要创建一个maven module即可。
3.在ecplise中创建maven project。要勾选上create a simple project,这样会给我们创建一个简单的目录结构。否则不会给我们创建目录结构,需要我们自己手动创建目录。
使用默认的工作区间即可。

4.点击next,进入下一个页面:

Group Id:所在的公司、组织的名称。一般用域名的倒置,比如:com.baidu。
Artifact Id:项目名称,如:helloworld。
Version:项目的版本.
packaging:
jar:java项目
war:web项目
pom:用于工程聚合时,父工程一般选择这种方式。
填到此处我们就可以点击finish了:

5.可以看到一个helloword工程,但报错。

6.在Deployed Resources下的webapp下新建WEB-INF文件夹,在WEB-INF文件夹下新建web.xml文件:

web.xml文件的内容为:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
</web-app>
此时,工程的错误就解决了。错误解决了,就可以新建我们的servlet了。
7.在srs/main/java下创建一个servlet,但报错:

在srs/main/java下创建了servlet后,会自动在src包下添加。
8.要解决问题,就是要将servlet-api-xxx.jar包放进来。
作为一个maven项目,需要添加一个servlet的坐标,从而导入servlet的jar包。
直接打开helloworld工程下的pom.xml文件,再添加坐标。
一般标签我么记不住,可以通过下面这种方式引入坐标:

点击add,进入下一个页面:

我们输入servlet,在下面会出现相关的servlet-api,我们随便选择一个api版本,然后点击ok即可。这样在pom.xml中便将servlet的坐标添加进去了:

这样错误就解决了。
9.在servlet中写入:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.getWriter().write("hello...");
}
此时会出现编译错误。
10.出现编译错误的原因是ecplise默认的jdk版本为1.5,而我们maven中使用的是1.8的版本,所以需要对JDK的版本进行配置,在pom.xml中写入:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
然后update project,JDK的版本就变为了1.8。
工程名--->右击--->maven--->update project。查看版本为:

11.我们将JDK的版本改为1.8之后,错误解决,然后就可以运行servlet代码了:
工程名--->右击--->Run As--->maven build...在这里我们可以输入maven的命令,比如tomcat:run,启动服务器:

12.tomcat服务器启动之后,我们在浏览器中访问Servlet,可以得到如下结果:

说明tomcat与maven已经打通。
在ecplise中创建一个maven工程的更多相关文章
- 使用idea创建一个maven工程
使用idea创建一个maven工程 一.创建maven工程 二.输入工程名 三.指定maven仓库 四.点击finish 五.修改工程结构(file->project structure) 六. ...
- eclipse中创建一个maven项目
1.什么是Maven Apache Maven 是一个项目管理和整合工具.基于工程对象模型(POM)的概念,通过一个中央信息管理模块,Maven 能够管理项目的构建.报告和文档. Maven工程结构和 ...
- 在eclipse中创建一个Maven项目
1. 首先判断eclipse有没有自带Maven Window –> Perferences 如果有Maven,那就是自带了maven插件,如果没有,需要自行安装. 2.配置maven 2.1. ...
- IDEA中把一个Maven工程安装到本地仓库
首先说明问题,我需要使用PageHelper插件,但是这个分页插件是改造过的,是一个pom工程,现在需要当作一个jar包使用,所以需要安装到本地仓库 1. 2. 3. 4. 5.成功 6.需要使用该j ...
- 十一、eclipse如何创建一个maven工程project
1. 2. 3. 4. 这是刚创建的工程,因为缺少WEB-INF/web.xml,所以项目会报错 5. 6. 再编写一个web.xml文件,项目就正常了,没有报错:后期需要自己添加对应的pom.xml ...
- 十六、IDEA创建一个maven工程
1.点击Create new Project 2.选择maven,使用的jdk,点击next; 3.填写GroupId和工程名,点击next; 4.默认不做其他修改,点击Finish; 5.创建成功
- 【Java_SSM】(二)使用eclipse创建一个Maven web工程
这篇博文我们介绍一下如何利用eclipse创件一个maven web工程. (1)File--New--Other--Maven--Maven project 此处我们快速创建一个maven工程 点击 ...
- 使用Idea第一次创建一个Mavne工程时没有src目录
在使用idea创建一个maven工程时没有src目录,可能出现的问题很多,我先把我自己的问题分享上来 因为没有src,可能是因为maven插件还没下载到本地仓库.maven插件的版本和jdk版本冲突或 ...
- Eclipse中一个Maven工程的目录结构
在之前的javaSE开发中,没有很关注Eclipse工程目录下的环境,总是看见一个src就点进去新建一个包再写一个class.以后的日子中也没有机会注意到一个工程到底是怎么组织的这种问题,跟不要说自己 ...
随机推荐
- javascript的节点的概念
<html> <head> <title></title> </head> <body> </body> </ ...
- javascript的防篡改对象之preventExtensions()方法
js在默认情况下,所有的对象都是可扩展的.这也是让很多开发人员头特疼的问题.因为在同一环境中,一不小心就会发生修改了不必要的对象,而自己却不知道. 在ECMAScript5可以解决这种问题了. pre ...
- Sublime Text 3 个人使用总结
待更新 Sublime Text 3\Packages\FileHeader\template\header
- angularjs探秘<一>认识angularjs
首先聊聊angularjs是啥. 首先AngularJS 是一个 JavaScript 框架.(PS:其实就是外部引用的js文件) 所以AngularJS的使用依然是外部引用js文件. 附上引用地址 ...
- 温故而知新-正则单词和strlen
1 正则表达式用\b表示单词的开始和结束 \bblog\b 正则查找blog这个单词 2 关于strlen的汉字问题 在utf8格式下 strlen('汉字')=6 在gbk格式下 strlen(' ...
- (6/24) 插件配置:轻松配置JS文件压缩
实际开发中,在项目上线之前,我们编写的js代码是需要进行压缩的,我们可以采取压缩软件或者在线进行压缩,这不是我们的重点,在webpack中实现JS代码的压缩才是本节的核心. 通过webpack中可实现 ...
- 16 python xml模块
1.基本概念 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单. 不过,古时候,在json还没诞生的黑暗年代,大家只能选择用xml呀. 至今很多传统公司如金 ...
- vue深入了解组件——自定义事件
一.事件名 跟组件和prop不同,事件名不存在任何自动化的大小写转换.而是触发的事件名需要完全匹配监听这个事件所用的名称.举个例子,如果重复啊一个camelCase名字的事件: this.$emit( ...
- jstl fmt
1)导入jstl 包,加载ftm标签 首先将jstl的jar包放入类库中,使用1.2版本 其次在jsp文件中引入所需要的 标记库,对于 ftm 标签,如下: <%@ taglib prefix= ...
- 转:Linux设备驱动开发(1):内核基础概念
一.linux设备驱动的作用 内核:用于管理软硬件资源,并提供运行环境.如分配4G虚拟空间等. linux设备驱动:是连接硬件和内核之间的桥梁. linux系统按个人理解可按下划分: 应用层:包括PO ...