首页 > 代码库 > 使用maven创建项目和cannot change version web module 3.0

使用maven创建项目和cannot change version web module 3.0

近期下载了最新的Eclipse mars.2, 这个eclipse自带了maven插件,于是就用maven尝试创建一个java web项目。

第一步,例如以下图所看到的选择 Maven Project。 Next

技术分享技术分享

技术分享

第二步。注意Create a simple project不用打勾, Next

技术分享

技术分享

第三步,在Filter中输入web能够高速检索须要的archetypes,选中 然后Next

技术分享

技术分享

第四步。

Group Id  是指项目组唯一标识符,实际相应java包的结构

Aftifact Id 指项目唯一标识符。就是项目名称

Finish,完毕一个项目的创建

技术分享

技术分享

以上为完毕一个maven项目的流程,可是新创建的项目可能有一些错误,须要去调整,接下来继续说明

第一个错误:

刚刚创建的maven项目下 仅仅有resource目录, src/main/java和  src/test/java 目录都是missing  (项目右键属性。在Java Build Path中的Order and Export选项卡中可见)

技术分享技术分享

技术分享技术分享

解决的方法例如以下:

切换到Libraries选项卡,  选中JRE System Library[J2 SE - 1.5] 点击 右側 Edit.. 

技术分享

技术分享

不採用默认的jdk, 选择Alternate JRE 中选择当前环境用的JDK(我自己用的jdk 1.7),  点击Finish 和 OK完毕设置

missing 的目录已经出现:

技术分享 技术分享

接下来处理 jsp文件编译出错的问题

选中项目右键 属性 回到 Java Build Path窗体。不多说。看图

技术分享

技术分享

在这里我是提前配置好了tomcat7的,点击Finish , 然后Ok到结束,就完毕了jsp编译的设置

一个新的maven项目创建完毕。 刚创建好的项目, jdk版本号还有 web.xml版本号过低 jdk默认好像是1.5的, web.xml默认是2.3的

右键项目 -->  属性 -->  Project Facets

技术分享

我的jdk版本号是1.7 故java选择1.7 。Dynamic Web Module选择3.0,jdk会设置成功, Dynamic web Module会发现设置不了。 

报 Cannot change version of project facet Dynamic web module to 3.0的错误

解决的方法是: 

1.改动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"
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>

2.在navigator的视图下 找到项目下的 .setting目录, 打开文件org.eclipse.wst.common.project.facet.core.xml, 将jdk从1.5改动为1.7,  jst.web改动成3.0

<?

xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="java" version="1.7"/>
  <installed facet="jst.web" version="3.0"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>

这样就完毕了改动,并且有效,但有个问题是一旦又一次 点击 Maven --> Update Project.. 就一夜回到解放前了

所以须要pom.xml文件里,加入一段配置,这样就能保证 Maven --> Update Project..之后也正常了。

<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>3.5.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>

使用maven创建项目和cannot change version web module 3.0