Instalé JDK 7 y Eclipse 3.6M6. Luego, añadí JRE 7 como un nuevo entorno de ejecución JRE en Eclipse, y establecer el nivel de conformidad del compilador Java 7. puedo compilar el siguiente fragmento de código a través de la línea de comandos utilizando el javac
que viene con el JDK 7.Programación de Java 7 en Eclipse
import java.util.HashMap;
import java.util.Map;
public class Try {
public static void main(String[] args) {
Map<Integer, String> map = new HashMap<>();
}
}
Pero, Eclipse muestra los siguientes mensajes de error.
Número incorrecto de argumentos para el tipo HashMap; no se puede parametrizar con argumentos Try.java/TryJava7/src línea 7 Java Problema
Error de sintaxis en el token "<",? se espera después de esta señal de línea Try.java/TryJava7/src 7 problema de Java
A pesar de que he establecido el nivel de cumplimiento del compilador de Java 7, parece que Eclipse no entiende la sintaxis Java7 todavía. ¿Es posible jugar con Java 7 en Eclipse?
El siguiente es el contenido de .classpath
.
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.7"/>
<classpathentry kind="output" path="bin"/>
</classpath>
Y, el siguiente es el contenido de .settings/org.eclipse.jdt.core.prefs
.
eclipse.preferences.version=1
org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled
org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.7
org.eclipse.jdt.core.compiler.codegen.unusedLocal=preserve
org.eclipse.jdt.core.compiler.compliance=1.7
org.eclipse.jdt.core.compiler.debug.lineNumber=generate
org.eclipse.jdt.core.compiler.debug.localVariable=generate
org.eclipse.jdt.core.compiler.debug.sourceFile=generate
org.eclipse.jdt.core.compiler.problem.assertIdentifier=error
org.eclipse.jdt.core.compiler.problem.enumIdentifier=error
org.eclipse.jdt.core.compiler.source=1.7
¿Tiene cierres? :-( – OscarRyz
@Oscar Reyes, no creo que la especificación de Java 7 para cierres se haya publicado oficialmente todavía. – reprogrammer
@Oscar Closures están programados para jdk8 –