1

为什么以下语句在java中编译但在scala中编译失败

new ClientConfig.Builder("http://localhost:9200").multiThreaded(true).build()

Scala IDE 说“值 multiThreaded 不是 io.searchbox.client.config.ClientConfig.Builder 的成员”有问题的类可以在这里找到

4

1 回答 1

2

这个简单的例子有效:

// Java
public class JavaClass
{
    public static class Builder
    {
        public Builder(String serverUri)
        {
        }

        public Builder multiThreaded(boolean isMultiThreaded)
        {
            return this;
        }

        public Builder discoveryEnabled(boolean isDiscoveryEnabled)
        {
            return this;
        }

        public String build()
        {
            return "BUILD";
        }
    }
}

Scala 客户端(一个 Eclipse Scala IDE 工作表)

object ScalaClient {
  new JavaClass.Builder("http://test").multiThreaded(true).discoveryEnabled(false).build()
}

尝试清理和重建项目——当我写这个简单的例子时,我遇到了类似的错误,当我清理项目时这些错误就消失了。

于 2013-11-13T18:08:11.807 回答