場景:在導入Maven項目時候遇到如下錯誤。
1 問題描述
Eclipse Maven 開發一個 jee 項目時,編譯時遇到以下錯誤:
Description Resource Path Location Type
Dynamic Web Module 3.1 requires Java 1.7 or newer. bdp line 1 Maven Java EE Configuration Problem
Description Resource Path Location Type
One or more constraints have not been satisfied. bdp line 1 Maven Java EE Configuration Problem
如圖:
但是 Eclipse 明明已經將編譯級別設置為 1.7:
這是由於你的 Maven 編譯級別是 jdk1.6 或以下,而你導入了 jdk1.7 以上的依賴包:查看 Eclipse 的 Navigator 視圖下該項目的 .classpath 文件:
2 解決過程
概述:使用maven構建web項目時,經常會遇見這個問題,問題原因報錯講述的很清晰明了,就是web模塊需要使用java1.7及以后的版本,目前的版本不符合。因而只需要修改java版本到1.7及以上即可。
解決方法:
1. 在eclipse 構建 web中關於java版本有三處需要修改統一。
(1)在 Java Build Path的libraries中修改
(2)在Java Compiler 中修改
(3)在Project Facet中修改
2. 大部分按上上述修改就應該可以了,但總是有意外,還是報錯。因為使用了 maven構建項目,因而最好在pom.xml文件中的build標簽中加入以下代碼:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> //如果是1.8,修改為1.8 <target>1.7</target> //如果是1.8,修改為1.8 </configuration> </plugin> </plugins> </build>
3.最后再右鍵使用maven的Update Project 即可。