我有一个Eclipse项目,它被设置为与EMF和Xtend一起使用。我确实工作,但是,我遇到了一些我无法解决的奇怪的编译问题。
我想再强调一点,我使用的代码确实有用,但我必须执行繁琐的步骤来运行项目。
这个问题影响了三个文件。
AppController.xtend
Generator.xtend
ScreenNavigatorController0.xtend
我不确定问题何时开始,但在我开始使用AppController运行程序之前我没有遇到过。 AppController中产生错误的具体代码是:
screenNavigatorController = new ScreenNavigatorController0(this, navigatorMap);
这里this
带有红点加下划线,消息为:
类型不匹配:无法从AppController转换为AppController
构造函数如下所示:new(Object controller, HashMap<Integer, String> map) {...}
(它应该是AppController controller
但我只是想确保它不相关)
所有三个类文件都在eclipse的包浏览器中用红色x(十字)标记,表示错误。
现在你可能会认为某处存在另一个编码错误,但这就是它变得奇怪的地方。
如果我清理项目,我会收到很多错误消息。无法找到类等。但是如果我打开Generator.xtend并只编辑一个随机行,例如whitespace / newline和resave,那么AppController.xtend和Generator.xtend都会解决,没有问题,红色x就消失了。
现在只有ScreenNavigatorController0.xtend留下红色x。我在其中添加了一个随机空格并保存,现在一切正常。
现在它真的很烦人。我可以编辑Generator.xtend和ScreenNavigatorController0.xtend而不会出现问题,但是,如果我编辑AppController.xtend,那么我会得到初始错误消息,并且必须执行上述所有操作才能解决它。
我尝试过再次删除并添加AppController
,但没有运气。
我希望有人可以对此有所启发。
感谢您的时间
的Fredrik