版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/feinifi/article/details/81050636
当我们在Eclipse中通过maven向导构建maven web项目后,一般需要修改一些环境变量。如果jdk使用的是1.8,那么我们需要设置buildpath,还需要修改Project Facets下面的两个属性:Dynamic Web Module:3.1和Java:1.8,而Dynamic Web Module是无法通过界面设置成功的,我们需要在项目路径下的.settings目录下文件org.eclipse.wst.common.project.facet.core中设置:
另外,我们还需要增加依赖库:server library,指向我们的tomcat。否则项目会报错,无法解析javax.servlet.http.HttpServlet。
当我们做完这些之后,项目还是会报红叉,打开Problems视图,我们发现如下错误:
这时候,我们需要修改两处配置:
1、修改web.xml,将默认生成的webapp标签意外的部分去掉,加上<?xml version="1.0" encoding="UTF-8"?>,另外,webapp标签,还需要设置命名空间。
修改过后的web.xml,这样第一个问题就解决了一半,后面需要在项目上右键->Maven->Update Project才会生效。
2、修改pom.xml,增加对编译时jdk的限制,增加的这一段和<build></build>是同一级。
<profiles>
<profile>
<id>jdk-1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.targer>1.8</maven.compiler.targer>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile>
</profiles>
这两处修改之后,就在项目上右键->Maven->Update Project,即可看到Problems视图下的错误不存在了,项目红叉没有了。