清除缓存/重启...对我有帮助!
我的Java类中的代码是:
Intent intent = new Intent(view.getActivity(), AddPaymentActivity.class);
view.getActivity().startActivity(intent);
AddPaymentActivity有Kotlin扩展.kt
。
出现错误java.lang.NoClassDefFoundError
清除缓存/重启...对我有帮助!
我的Java类中的代码是:
Intent intent = new Intent(view.getActivity(), AddPaymentActivity.class);
view.getActivity().startActivity(intent);
AddPaymentActivity有Kotlin扩展.kt
。
出现错误java.lang.NoClassDefFoundError
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
apply plugin: 'kotlin-android'
...
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
到 build.gradle
文件
例子
项目的 build.gradle
文件
...
buildscript {
ext.kotlin_version = '1.1.51'
dependencies {
classpath 'com.android.tools.build:gradle:3.0.1'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
...
}
}
allprojects {
repositories {
jcenter()
google()
}
}
应用程序 build.gradle
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
...
dependencies {
...
compile "org.jetbrains.kotlin:kotlin-stdlib-jre7:$kotlin_version"
}
文件 -> 无效缓存/重新启动...
Java和Kotlin生成的类没有实质性区别。如果您的代码在Android Studio中被静态解析(应该是这样的),那么除非Gradle配置错误,否则它必须运行。
您只需要像在Java中一样“正常”地操作即可:
Intent intent = new Intent(getActivity(), KotlinActivity.class);
startActivity(intent);
不要忘记在gradle文件中首先添加Kotlin到您的项目中。否则它将无法工作。