编辑:我是个白痴。我当时使用的是“Eclipse for Java开发人员”,应该使用“Eclipse”。Scala插件在经典.环境下运行得更好
*编辑:2011年11月1日-2011年10月31日发布的Beta 12版本似乎要好得多*
**编辑:2011年11月4日- Beta 12版本变得不稳定,以至于我们的团队切换到了IntelliJ。我希望将来试用Eclipse插件,并有不同的体验。
我在eclipse中有一个混合的java/scala项目,我发现代码完成并不总是有效的。它似乎对“对象”和在不同项目中定义的类有最大的问题。我知道这只是scala插件的一个“特性”,但是我应该做些什么来尽量减少这些特性的影响呢?
Eclipse Indigo
Scala Plugin: 2.0.0-beta11 在再玩一天之后,我发现大多数问题都是在从scala访问java类的静态成员时出现的。
发布于 2011-10-28 08:57:43
目前(Scala插件版本: 2.0.0.beta11-2_09-201110031011-3a97f5e,Eclipse版本: 3.6.2.v201102101200)插件中的代码完成存在一些问题。顺便说一句,这不是插件的最新版本,我知道很多这些问题都在积极研究。
首先,请确保在Scala->安装诊断中检查两个完成选项:
有两个普遍的问题领域:
解决这些问题的方法是为尝试手动使用的类添加导入。这就避免了绝大多数问题。我知道这很痛苦,但很管用。
最近我还没有看过这段代码,但据我所知,这些问题主要是由于:
另外,请注意,您期望的一些方法可能根本不会出现。如果对象受隐式转换的限制,则不会得到所期望的方法。
如果遇到问题,请首先查看已知问题和未决问题列表。如果存在问题,请将您的用例添加到其中,包括版本号和任何其他相关信息。如果您的问题不存在,请创建它。
对于额外的浏览器点,您可以克隆github上的scala ide,并提交一个拉请求与您的修复。
发布于 2011-10-28 02:51:40
您可能想尝试http://groups.google.com/group/scala-ide-user组,前提是您可以提供更多的详细信息,并且希望不要使用“抽吸”这个词。
我所能说的是这个简短的测试用例在Helios SR2和Eclipse插件2.0.0.beta 11上工作得很好。我不确定Java对多个项目的支持有多深,而且可能存在已知的限制。
我用以下结构进行了测试。
以下是自动完成的内容(见注释)
package test2
import test1.{A1, O1} // A1 and O1 choices offered from A or O
class A2 {
val a1 = new A1
a1.ma1("foo") // ma1 was autocompleted from m
val a3 = new test3.A3 // test3 choice offered from test
a3.ma3("wqqw").toLowerCase() // ma3 completed from m
// toLowerCase was completed from toL (3 choices offered)
val o1 = O1.mo1 // mo1 was autocompleted from m
val ox = O1 // O1 was completed from O (as second choice)
}发布于 2015-10-03 07:18:47
这是一篇老文章,我的环境略有不同,但是Eclipse露娜+ Scala插件(4.2.0)也有同样的问题,并且找到了一个想要做出贡献的解决方案。
在我的例子中,Ctrl+Space上没有自动完成,实际上也没有显示编译错误。
我的解决办法是
然后开始起作用了。

(我的项目缺少Scala容器2.11.7 )
https://stackoverflow.com/questions/7924193
复制相似问题