網頁

2018/3/23

Eclipse 匯入Maven Web專案出現錯誤“Dynamic Web Module 3.1 requires Java 1.7 or newer”

情境是這樣,在Github有一個Maven Dynamic Web專案,透過Git Bash在Eclipse的workspace目錄下直接clone該專案,clone下來後接著在Eclipse import此目錄為[Maven Exsiting Maven Projects],然後在Eclipse的Markers頁籤出現Dynamic Web Module 3.1 requires Java 1.7 or newer錯誤,而且classpath如src/main/java不見了。解決方法如下。

開啟專案的pom.xml並加入maven-compiler-plugin於<build>如下。確認使用的servlet版本和jdk版本,存檔後在專案上按滑鼠右鍵 -> Maven -> Update Project...來更新專案的Maven。更新完後則原本錯誤都會消失了。

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  
  ...

  <build>
    <finalName>Project Name</finalName>
    <plugins>
        ...
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-compiler-plugin</artifactId>
        <version>3.1</version><!-- Servlet 3.1-->
        <configuration>
          <source>1.8</source><!-- source compile Java version -->
          <target>1.8</target><!-- target compile Java version -->
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>

參考:

沒有留言:

張貼留言