0
import com.google.inject.assistedinject.Assisted;

public interface TesterFactory {
    TesterResource create(@Assisted String serviceName, @Assisted String serviceType);
}

我的 TesterResource 类有 2 个成员:

@Inject
@Assisted
private String serviceName;

@Inject
@Assisted
private String serviceType;

但是,当我构建代码时,我收到一个错误 A binding to java.lang.String annotated with @com.google.inject.assistedinject.Assisted(value=) is already configured at TesterFactory.create()。如果我只为 serviceName 保留 @Assisted,我不会收到此错误。

4

1 回答 1

0

辅助使您能够命名值,@Assisted(value="blah")

现在(无论正在寻找注入的东西)正在寻找一个空字符串。正如您所拥有的那样,您将值(serviceNameserviceType)分配给一个空值,因此您试图将不同的值分配给同一个绑定。

于 2017-10-04T22:11:11.413 回答