我的Maven構建在Windows機器上很好,但是在Ubuntu上編譯錯誤失敗。Maven構建在Ubuntu 12.04上失敗,JDK1.7
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.0.2:compile (default-compile) on project [XXX]: Compilation failure: Compilation failure:
[ERROR] /usr/share/tomcat7/[XXX]:[24,23] error: no suitable constructor found for XXX
[ERROR]
[ERROR] constructor XXX is not applicable
[ERROR] (actual argument Class<XXX> cannot be converted to Class<? extends XXX> by method invocation conversion)
[ERROR] constructor XXX is not applicable
[ERROR] (actual and formal argument lists differ in length)
[ERROR] /usr/share/tomcat7/[XXX]:[36,24] error: no suitable constructor found for XXX)
[ERROR] -> [Help 1]
貓的/ etc/LSB釋放
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=12.04
DISTRIB_CODENAME=precise
DISTRIB_DESCRIPTION="Ubuntu 12.04.4 LTS"
Java的版本
java version "1.7.0_51"
OpenJDK Runtime Environment (IcedTea 2.4.4) (7u51-2.4.4-0ubuntu0.12.04.2)
OpenJDK Client VM (build 24.45-b08, mixed mode, sharing)
MVN -version
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.7.0_51, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-openjdk-i386/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.5.0-46-generic", arch: "i386", family: "unix"
我已經嘗試過建立它的Java 1.6和將java更改爲oracle-7-JDK ...
錯誤保持不變。
你能幫我嗎?
編輯
現在它看起來像這樣安裝了Oracle JDK:
Java的版本
java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) Client VM (build 24.51-b03, mixed mode)
MVN -version
Apache Maven 3.0.4
Maven home: /usr/share/maven
Java version: 1.7.0_51, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-7-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.5.0-46-generic", arch: "i386", family: "unix"
構建仍然失敗,相同的錯誤消息
想到的第一件事就是Java版本。我不太確定你是否擁有完全成熟的Java JDK。您可以請安裝Java JDK [說明](http://www.webupd8.org/2012/01/install-oracle-java-jdk-7-in-ubuntu-via.html)並查看錯誤是否持續? – npinti
感謝您的指示。 – JBR
檢查消息'/ usr/share/tomcat7/[XXX]:[24,23]錯誤:找不到合適的構造函數用於XXX [錯誤] [錯誤]構造函數XXX不適用「,這是你的問題。 – khmarbaise