我的项目有两个项目:main project
和library project
。
main project
依赖关系library project
。
现在我想使用kotlin
这两个。我已将common rx extension code
添加到library project
:
fun String.rxRequest(@NotNull builder: (Request.Builder) -> Unit): Observable<Response> = Observable.create<Response> {
var mBuilder: Request.Builder = Request.Builder().url(this)
builder.invoke(mBuilder);
it.onNext(HttpClient.create().newCall(mBuilder.build()).execute())
it.onCompleted()
}.subscribeOn(Schedulers.from(THREAD_POOL_NET));
然后我在main project
:
"http://www.xxx.xxx".rxRequest {
val requestBody = FormEncodingBuilder().add("code", code).build()
it.post(requestBody)
.header("XRDid", appInfo.deviceId)
}
它构建失败:
LoginPresenter.kt: Unresolved reference: rxRequest
library project
构建成功,在构建文件夹中生成kotlin .class。
但是main project
构建失败,在构建文件夹中没有kotlin .class文件。
答案 0 :(得分:1)
我有同样的问题,我修复了在两个模块/项目中添加所有kotlin依赖项,当然也要确保添加kotlin插件并将kotlin文件夹设置为包含在javaSrc。