在某个包中创建类并在类中添加enum声明后,我就不能再生成getter和setter了。我怀疑这与项目设置或设置有关,但我不确定在哪里看。如果我在它自己的项目中创建相同的类,我不认为有问题。
public class ExampleClass {
private enum SampleEnum {
A, B, C;
}
private SampleEnum e;
private String variableToGenerateCodeOn;
}
当我尝试为variableToGenerateCodeOn生成getter和setter时,我得到这个错误:cannot analyze selected field 'variableToGenerateCodeOn'
编辑 当我用tomcat解决这些错误时,问题并没有消失。在我的团队中还有两个人,其中一个能够用相同的代码重现bug,另一个则不能。我现在猜测它与一些工作空间设置有关,但我愿意接受其他想法。原思想仍保留如下:
过时/排除想法 我从一些包含的tomcat文件有几个错误。其中一个可能适用:
Description: Enumeration cannot be resolved to a type
On Detail: sessionDetail.jsp
In Folder: {myproject}/tomcat/webapps/manager/WEB-INF/jsp
Location: line 104
这是Eclipse Indigo中的一个缺陷。一些嵌套声明的存在会混淆getter/setter代码。你可以用bugzilla报告。现在,将枚举移到它自己的文件中,或者按爪子键入getter和setter。(狗的笑话)
当出现错误时,Eclipse的行为非常奇怪且不确定—即使错误位于不同的文件中并且看起来完全不相关。因此,尝试删除这些错误,那么Eclipse将可能能够生成setter和getter(您的示例对我有效)。
我得到了这个错误的eNums关键字,因为我使用的类名'实践'。在声明以开头的类、方法或变量时,Eclipse会出现错误提示pract ract, ria。
你可以尝试在变量声明中删除单词variable ('variableToGenerateCodeOn'),尝试其他单词可以帮助你,
或检查代码中与上述任何声明押韵的其他地方