阿神2017-04-18 10:12:09
私も同じ問題に遭遇しました。
方法 1 と 2 を正しく使用する方法がわかりません。最も簡単な方法も
実は
リーリー返されるのは ManagedChannelBuilder[Any] です。実際、ここでは Any であってはなりません。しかし、
リーリーその後、nameResolverFactory はこの T を Any として返します。
その後、Any の build メソッドを呼び出すことになりますが、明らかにコンパイルを通過できません。
もっと良い方法があるといいですね~
=========================================== === ====
更新
問題を単純化します:
リーリーこれは元の定義です。これを def retA: A[_ <: A[_]] = ???
に変更すれば問題ありません。
これでうまくいきます
リーリー同様に、ManagedChannelBuilder<?>
に戻るときは、.asInstanceOf[ManagedChannelBuilder[_ <: ManagedChannelBuilder[_]]]