Eclipse建立webapp3.0以上的Maven项目
2016-05-03 17:46
615 查看
建立项目
使用Eclipse建一个File –> New –> Other
Next ,Next,选择maven-archetype-webapp
输入坐标信息,Finish
稍等片刻,我们的webapp骨架就构建好了。
项目依赖与设置
新建的项目会报错,不过无关紧要,主要是我们的项目没有运行环境,导致jsp无法编译,错误具体原因The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path
解决方法有两个
第一个就是为项目添加一个运行环境。
在工程上右键 –> Properties
在Targeted Runtimes中为项目添加一个运行环境就好了。
第二个是可以为项目加入servlet的依赖。
<dependency> <groupId>javax.servlet</groupId> <artifactId>javax.servlet-api</artifactId> <version>3.1.0</version> <scope>provided</scope> </dependency>
任选一个就可以了。
补充
Maven的依赖范围
Maven有三种classpath(编译classpath、测试classpath和运行classpath)相应的Maven有以下几种依赖范围
compile:编译依赖范围。如果没有指定,就会默认使用该依赖范围。使用此依赖范围的Maven依赖,对于编译,测试和运行三种classpath都有效。典型的例子就是spring-core。
test:测试依赖范围。使用此依赖范围的Maven依赖,只对于测试classpath有效,在编译主代码或着运行项目时将无法使用次依赖。典型的例子就是Junit。
provided:已提供范围依赖。使用此依赖范围的Maven依赖,对于编译和测试classpath有效,但在运行时无效,典型的例子就是servlet-api,编译和测试项目的时候需要该依赖,但在运行项目的时候,由于容器已经提供,就不需要Maven重复引入了。
还有runtime和system,详情参考
许晓斌. Maven实战[M]. 机械工业出版社, 2011.
这里我采用第二种方法,配置一个provided的servlet-api依赖。
修改webapp版本
默认建立的webapp是2.3的。我们将其修改为3.1的。第一步,将web.xml的头信息进行修改。
各个版本的头信息如下2.3的头信息
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"> <web-app id="WebApp_ID"> <display-name>2.3</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> </web-app>
3.0的头信息
<?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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0"> </web-app>
3.1的头信息
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1"> </web-app>
第二步,修改org.eclipse.wst.common.project.facet.core.xml。
修改项目路径下的.settings/org.eclipse.wst.common.project.facet.core.xml将jst.web的版本改为自己想要版本,我改到了3.1
第三步,修改pom.xml。
在pom.xml的build标签里添加如下元素<plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> </plugins>
然后工程,右键 –> Maven –> Update Project
工程右键 – > Properties
项目已经是web3.1和java1.7了。
关于为什么我的项目直接是1.7的Java
因为我的用户级的settings做了如下修改
<profile> <id>jdk-1.7</id> <activation> <activeByDefault>true</activeByDefault> <jdk>1.7</jdk> </activation> <properties> <maven.compiler.source>1.7</maven.compiler.source> <maven.compiler.target>1.7</maven.compiler.target> <maven.compiler.compilerVersion>1.7</maven.compiler.compilerVersion> </properties> </profile>
大概在settings.xml的200行左右。
Maven的配置参见
http://blog.csdn.net/frankcheng5143/article/details/51245282
有时候我们的Maven会忘记给我们建立相应的文件夹。
我们依次建立相应的文件夹。
在 src/main下 New Folder即可。
参考
http://my.oschina.net/China2012/blog/191404?fromerr=jjzJfqKY相关文章推荐
- maven学习
- maven插件maven-war-plugin的使用
- jenkins------部署项目到jboss eap下
- maven使用经验集
- MyEclipse Web Project转Eclipse Dynamic Web Project
- Windows Clang开发环境备忘
- 傻瓜式用Eclipse连接MySQL数据库
- Eclipse引入jquery报错如何解决
- 让Flex Builder 3.0与Eclipse3.4整合起来
- Eclipse配置Javascript开发环境图文教程
- 使用zend studio for eclipse不能激活代码提示功能的解决办法
- 图解Eclipse j2ee开发环境的搭建过程
- 两种Eclipse部署动态web项目方法
- ext for eclipse插件安装方法
- 解决Fedora14下eclipse进行android开发,ibus提示没有输入窗口的方法详解
- eclipse导入jquery包后报错的解决方法
- Eclipse 格式化代码时不换行与自动换行的实现方法
- Eclipse下jQuery文件报错出现错误提示红叉
- eclipse如何忽略js文件报错(附图)
- eclipse3.2.2 + MyEclipse5.5 + Tomcat5.5.27 配置数据库连接池