今天在学struts的国际化应用程序时写的一段代码:
import java.util.Hashtable;
import java.util.Locale;
import java.util.Map;
public class Locals {
public Map<String, Locale> getLocales() {
Map<String, Locale> locales =new Hashtable<String, Locale>(2);
locales.put("American English", Locale.US);
locales.put("Simplified Chinese", Locale.CHINA);
return locales;
}
}
总是报错,提示Syntax error,parameterized types are only available if source level is 5.0
原因是:我们的项目编译的时候使用的jdk版本低于5.0
解决方法如下:
一种是Myeclipse对所有项目默认的设置是5.0以下,项目继承了默认设置(在Myeclipse IDE中的菜单Window/Preferences/Java/Compiler里改为5.0或高于5.0)
另一种是单个项目里设置了source level 5.0以下(在项目属性/Java Compiler 里改为5.0或高于5.0)
问题解决了~@@