Android开发之Java和Kotlin混合开发互相跳转报错的问题

老套路报错如下:

Android开发之Java和Kotlin混合开发互相跳转报错的问题_第1张图片

关于这个错误我检查了不知道多少遍了,包路径啥的XML配置也都是没问题。我思来想去最后发现是Kotlin环境的问题:

我的项目是个Java版本的项目,然后再Java项目里面新建的Kotlin的文件,代码写完后再次运行就报错了,无论如何找不到原因。因为以前的项目Java和Kotlin互相跳转没有问题的。看我的kotlin跳转Java的Activity方法如下:

Android开发之Java和Kotlin混合开发互相跳转报错的问题_第2张图片

一行代码十分简单而已。就是报错了

startActivity(Intent(this@MvpPageActivity, JavaActivity::class.java))

再看下Java跳转Kotlin版本的Activity页面

Android开发之Java和Kotlin混合开发互相跳转报错的问题_第3张图片

两个方法跳转都是没有问题的。

//方法一需要在跳转到的页面MvpPageActivity里面增加下面的代码
//                MvpPageActivity.Companion.start(JavaActivity.this);
                //方法二
                startActivity(new Intent(JavaActivity.this,MvpPageActivity.class));
//上面方法一里面要跳转增加的代码 
companion object {
        fun start(context: Context) {
            val intent = Intent(context, MvpPageActivity::class.java)
            context.startActivity(intent)
        }
    }

报错的原因往上翻看我标红的文字:

实际上总结就一句话,我的Java项目里面没有Kotlin环境,所有跳转到Kotlin页面的Activity会一直报错包找不到。

所以解决方法就是配置Kotlin的插件和依赖即可

另外再说个笨方法:

你也可以先建一个Kotlin项目然后将Java项目的所以文件复制进去即可。然后Java和Kotlin就可以成功跳转了

源码地址:MVP框架(Kotlin版)下载

你可能感兴趣的:(Android开发错误记录)