Configuración de JDK en Eclipse

117

Tengo dos JDK, para Java 6 y 7.

Quiero construir mi proyecto usando ambos. Inicialmente solo construimos contra 1.6. Veo que en la configuración de mi proyecto puedo seleccionar 1.5, 1.6 1.7 como nivel de compilador.

¿Cómo se agregan estas opciones al IDE? Nunca instalé Java 1.5. Supongamos que quisiera Java 1.4. ¿Cómo puedo conseguir que esto aparezca en la lista? He agregado dos JRE diferentes en mis preferencias de IDE, pero estos no son los que aparecen en el menú desplegable.

MayoMan
fuente

Respuestas:

145

Administra la lista de compiladores disponibles en Window -> Preferences -> Java -> Installed JRE's tab.

En el cuadro de diálogo de configuración de la ruta de construcción del proyecto, en la pestaña de bibliotecas, puede eliminar la entrada JRE System Library, hacer clic en Add Libraryy elegir el JRE instalado para compilar. Algunos compiladores se pueden configurar para compilar en una versión de compilador de nivel anterior. Creo que es por eso que está viendo las opciones de versión adicional.

Chris Gerken
fuente
Había agregado mi propio JRE a través de la opción "Agregar" en la ventana de JRE instalados. El problema es que cuando verifiqué el que quería que Eclipse usara, no se seleccionó como el espacio de trabajo predeterminado JRE. Entonces, cuando miré en las propiedades de mi proyecto, la "Biblioteca del sistema JRE" todavía estaba allí. Cuando lo eliminé y seleccioné "Usar el espacio de trabajo predeterminado JRE", solo entonces recogió mi cambio. Pensé que Eclipse debería haber actualizado mis proyectos JRE cuando seleccioné un JRE diferente para mi espacio de trabajo
MayoMan
1
Aunque dice "usar predeterminado", en realidad está usando el valor predeterminado en el momento en que se creó / importó el proyecto y nunca mira hacia atrás.
Chris Gerken
2
Para aquellos que no pueden encontrar el elemento 'Preferencias', está en el menú desplegable 'Ventana'.
Greg Quinn
80

Es posible que se necesiten algunos pasos adicionales para configurar correctamente tanto el proyecto como el espacio de trabajo predeterminado JRE, como lo mencionó MayoMan. Aquí está la secuencia completa en Eclipse Luna:

  • Haga clic derecho en su proyecto> propiedades
  • Seleccione "Java Build Path" a la izquierda, luego "JRE System Library", haga clic en Editar ...
  • Seleccione "JRE predeterminado del espacio de trabajo"
  • Haga clic en "JRE instalados"
  • Si ve el JRE que desea en la lista, selecciónelo (seleccionar un JDK también está bien)
  • De lo contrario, haga clic en Buscar…, vaya a Computadora> Windows C:> Archivos de programa> Java, luego haga clic en Aceptar
  • Ahora debería ver todos los JRE instalados, seleccione el que desee
  • Haga clic en Aceptar / Finalizar un millón de veces

Fácil ... no.

Georgie
fuente
3
También tuve que cambiar mi variable de entorno JAVA_HOME a la carpeta del JDK, y el JRE no fue suficiente.
Noumenon
2
¡Gracias Georgie! Websters define predeterminado como "una selección utilizada automáticamente por un programa en ausencia de una elección hecha por el usuario". Sin embargo, el "JRE predeterminado del espacio de trabajo" de Eclipse no está seleccionado de forma predeterminada.
JohnC
Gracias @Georgie, me salvaste las horas :)
Bhuvan Arora
13

Para decirle a eclipse que use JDK, debe seguir los pasos a continuación.

  1. Seleccione el menú Ventana y luego seleccione Preferencias . Puede ver un cuadro de diálogo.
  2. Luego seleccione Java ---> JRE instalados
  3. Luego haga clic en Agregar y seleccione VM estándar y luego haga clic en Siguiente
  4. En el inicio de JRE, navegue hasta la carpeta en la que instaló el JDK (por ejemplo, en mi sistema, mi JDK estaba en C: \ Archivos de programa \ Java \ jdk1.8.0_181 \)
  5. Ahora haga clic en Finalizar .

Después de completar los pasos anteriores, habrá terminado y eclipse comenzará a usar el JDK seleccionado para la compilación.

Gunta Vaishnavi
fuente
3

El compilador de Eclipse puede garantizar que sus fuentes de Java se ajusten a una versión determinada de JDK incluso si no tiene esa versión instalada. Esta función es útil para garantizar la compatibilidad con versiones anteriores de su código.

Su código seguirá siendo compilado y ejecutado por el JDK que ha seleccionado.

Garrett Hall
fuente
2

JDK 1.8 tiene alguna característica más enriquecedora que no es compatible con muchos eclipses.

Si no encontró el nivel de cumplimiento de Java como 1.8 en el compilador de Java, continúe e instale el eclipse de 32 bits o 64 bits a continuación, según los soportes de su sistema.

  1. Instale jdk 1.8 y luego configure JAVA_HOME y CLASSPATH en la variable de entorno.
  2. Descargue eclipse-jee-neon-3-win32 y descomprima: compatible con java 1.8
  3. O descargue Oracle Enterprise Pack para Eclipse (12.2.1.5) y descomprímalo: admite java 1.8 con sistema operativo de 64 bits
  4. Haga clic derecho en su proyecto> propiedades
  5. Seleccione "Java Compiler" a la izquierda y establezca el nivel de cumplimiento de Java en 1.8 [seleccione del menú desplegable 1.8]
  6. Intente ejecutar un programa java compatible con java 8 como la expresión lambda como se muestra a continuación y si no hay error de compilación, significa que su eclipse es compatible con java 1.8, algo como esto:

    interface testI{
        void show();
    }
    
    /*class A implements testI{
        public void show(){
            System.out.println("Hello");
        }
    }*/
    
    public class LambdaDemo1 {
        public static void main(String[] args) {
            testI test ;
            /*test= new A();
            test.show();*/
            test = () ->System.out.println("Hello,how are you?"); //lambda 
            test.show();
        }        
    }
Panda Ashwini
fuente
Bienvenido a StackOverflow y gracias por su intento de ayudar. Considere mejorar la legibilidad de su respuesta, aprendiendo sobre el formato. Hacer el recorrido podría ayudarlo a hacerlo.
Yunnosch
2

Configuración de JDK

  1. Windows -> Preferencias -> JRE instalados, para configurar los JDK instalados
  2. Propiedades del proyecto, compilador de Java, habilitar la configuración específica del proyecto (o configurar la configuración del espacio de trabajo), cumplimiento de JDK
  3. Propiedades del proyecto, ruta de compilación Java, bibliotecas, agregar biblioteca, biblioteca del sistema JRE, espacio de trabajo predeterminado o JRE alternativo (uno de los JRE configurados en

Maven

PERO SI está utilizando maven, siempre que tenga su último JRE (Windows / Preferencias / JRE instalados), por ejemplo, JDK 1.8

Puede seleccionar el nivel 1.6, 1.7, 1.8 configurando los atributos de origen y destino de maven-compiler-plugin, como este

            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.3</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>

E idealmente, si tiene un pom principal, puede hacerlo para todos los módulos (proyectos Eclipse) en el pom principal, en un solo lugar.

Fuente y destino Si queremos usar las características del lenguaje Java 8, la fuente –source debe establecerse en 1.8. Además, para que las clases compiladas sean compatibles con JVM 1.8, el valor –target debe ser 1.8.

Actualización de la biblioteca JRE que está rota en muchos proyectos a la vez (con Maven)

En lugar de actualizar una por una la biblioteca JRE, deje que Maven lo haga por usted.

Al seleccionar los proyectos y hacer clic con el botón derecho en Maven -> Actualizar proyecto, se configurará la biblioteca del sistema en la ruta del JDK instalado, en caso de que las rutas estén rotas (porque instaló un nuevo JDK o lo importó desde otra computadora, etc.) y establezca el cumplimiento de JDK de acuerdo con la configuración de origen y destino de maven en el pom.

José Manuel Gómez Álvarez
fuente