2012-01-25 13 views
13

Estoy tratando de construir un proyecto Maven existente en una instalación nueva de las últimas netbeans pero estoy recibiendo el siguiente error, cualquier ayuda es muy apreciada:Netbeans Maven error: javac: inválido distribución objetivo: 1,7

Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:2.3.2:compile (default-compile) on project com.rory.ngp.test: Compilation failure 
Failure executing javac, but could not parse the error: 
javac: invalid target release: 1.7 

Creo que tiene algo que ver con los caminos, pero no estoy seguro exactamente. Aquí está el contenido de mi /usr/lib/jvm directory;

bash-4.1$ pwd 
/usr/lib/jvm 
bash-4.1$ ls 
java        java-openjdk jre-1.6.0-openjdk.x86_64 
java-1.5.0-gcj-1.5.0.0    jre   jre-gcj 
java-1.6.0       jre-1.5.0  jre-openjdk 
java-1.6.0-openjdk-1.6.0.0.x86_64 jre-1.5.0-gcj 
java-1.6.0-openjdk.x86_64   jre-1.6.0 

Respuesta

14

Gracias Oers, tenías razón.

que necesitaba para instalar JDK 1.7/Java 7, y luego editar el archivo de configuración en los netbeans NetBeans instalar /etc/netbeans.conf directorio para señalar dónde he instalado la nueva versión de Java:

# Default location of JDK, can be overridden by using --jdkhome <dir>: 
    netbeans_jdkhome="https://stackoverflow.com/users/rory/Documents/jdk1.7.0_02" 
+2

Como tuve el mismo problema con IntelliJ: la solución es establecer la versión de JRE en la configuración del proyecto Maven | Runner. – sunside

+0

Parece ser un hecho extraño que si instala un jdk nuevo cuando Netbeans ya está instalado, debe manipular el netbeans_jdkhome como se describe aquí. Netbeans debería ser capaz de detectar cuál es la última jdk y usarla si no se encuentra lo que apunta a netbeans_jdkhome. Esto debe ser un error en Netbeans desde los viejos tiempos. – carl

8

Añadir lo siguiente a su pom virtud de crear plugins y debe apuntar a 1,6

 <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-compiler-plugin</artifactId> 
      <configuration> 
       <source>1.6</source> 
       <target>1.6</target> 
      </configuration> 
     </plugin> 
+0

Gracias, pero cuando lo cambié ahora consigo el error: operador de diamante no está soportado en -fuente 1,6 (use -source 7 o superior para habilitar el operador de diamantes) ---- (Alt-Enter muestra sugerencias) – Rory

+3

@Rory si necesita funciones de idioma de Java 1.7, entonces tiene que instalar un Java jdk 1.7 en su máquina – oers

+0

Eche un vistazo a http://stackoverflow.com/a/ 4724062/320180 –

0
<plugin> 
<groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-compiler-plugin</artifactId> 
    <version>2.3.2</version> 
    <configuration> 
    <source>1.6</source> 
     <target>1.6</target> 
     <compilerArguments> 
      <endorseddirs>${endorsed.dir}</endorseddirs> 
     </compilerArguments> 
    </configuration> 
</plugin> 

Si Plataforma o Fuente/formato binario en las propiedades del proyecto no es igual con esta configuración da error

Cuestiones relacionadas