我安装了JDK 7和Eclipse 3.6M6。然后,我添加JRE 7作为Eclipse的一个新的JRE的执行环境,并使用随JDK 7.在Eclipse中对Java 7进行编程
import java.util.HashMap;
import java.util.Map;
public class Try {
public static void main(String[] args) {
Map<Integer, String> map = new HashMap<>();
}
}
的
javac
设置编译器符合水平到Java 7.我可以通过命令行编译下面的代码段
但是,Eclipse提供了以下错误消息。
类型为HashMap的参数数量不正确;它不能用参数Try.java/TryJava7/src第7行参数化Java问题
令牌“<”上的语法错误,?预计此令牌Try.java/TryJava7/src目录第7行的Java问题
即使我已经设置了编译器的合规性水平的Java 7后,它看起来像Eclipse不明白Java7语法呢。在Eclipse中可以使用Java 7吗?
以下是.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>
而且,以下是.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
它是否已关闭? :-( – OscarRyz 2010-05-19 20:16:13
@Oscar Reyes,我不认为Java 7封闭规范已经正式发布 – reprogrammer 2010-05-23 15:48:06
@Oscar闭包计划为jdk8 – 2011-02-25 00:11:47