Kotlin:运行Hello程序时得到ClassNotFoundException
package com.example.manish.myapplication import android.support.v7.app.AppCompatActivity import android.os.Bundle class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } } fun main(arg : Array<String>){ print("HI") }
logcat的:
Exception in thread "main" java.lang.ClassNotFoundException: com.example.manish.myapplication.MainActivityKt at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:331) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java:264) at com.intellij.rt.execution.application.AppMainV2.main(AppMainV2.java:107)
这可能是Android Studio和Kotlin互操作中的一个已知问题。
当您尝试从非Android(例如纯Java + Kotlin)模块运行Kotlin类时,它不会将编译Kotlin类的单独目录添加到类路径中。
解决方法是将这些行添加到您的模块的build.gradle
:
dependencies { runtimeClasspath files(compileKotlin.destinationDir) }
这将main
来源集。 为了做测试,分别使用testRuntimeClasspath
和compileTestKotlin
。
这是Android应用程序还是常规应用程序? 我们不能在Android应用程序中有一个主要的功能; 它必须是一个普通的桌面项目。
但我不知道为什么:)
- 错误:Jack需要支持Java 8语言功能。 启用插件或删除sourceCompatibility JavaVersion.VERSION_1_8
- Kotlin:如何在类中使用多个Generic?
- Kotlin – MainActivity扩展AppCompatActivity,onRequestPermissionsResult函数未找到,不能被覆盖
- Android使用另一个活动保存的信息创建listitem / object
- Anko中简单的MapRowParser是什么?
- 房间持久性:错误:实体和Pojos必须有一个可用的公共构造函数
- 如何通过自定义的webView取代webView?
- 如何在Android Studio中配置AspectJ
- Kotlin数据类的房间数据库错误