Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在kotlin类中调用Java singleton类时发生NoClassDefFoundError_Java_Android_Kotlin_Singleton - Fatal编程技术网

在kotlin类中调用Java singleton类时发生NoClassDefFoundError

在kotlin类中调用Java singleton类时发生NoClassDefFoundError,java,android,kotlin,singleton,Java,Android,Kotlin,Singleton,如何在kotlin类中从java的Singleton类获取数据。?由于我的项目是一个旧项目,整个应用程序都是用java实现的,现在我正在kotlin中实现它的新模块,在kotlin的服务类(UpdateWidgetService.kt)中使用java的Singleton(CurrentUser.java),而我正在使用这个CurrentUser.getInstance().userType用于获取我的服务类中的用户类型的代码异常 Process: com.example.myapp, PID:

如何在kotlin类中从java的Singleton类获取数据。?由于我的项目是一个旧项目,整个应用程序都是用java实现的,现在我正在kotlin中实现它的新模块,在kotlin的服务类
(UpdateWidgetService.kt)
中使用java的Singleton
(CurrentUser.java)
,而我正在使用这个
CurrentUser.getInstance().userType
用于获取我的服务类中的用户类型的代码异常

Process: com.example.myapp, PID: 27066
    java.lang.NoClassDefFoundError: Failed resolution of: Lcom/myapp/main/CurrentUser
Java

   public class CurrentUser {

          String userType = "";

     private static CurrentUser instance;

      public static CurrentUser getInstance() {
            if (instance == null) {
                instance = new CurrentUser();
            }
            return instance;
        }

        public void setUserType(String userType) {
            this.userType = userType;
        }

        public String getUserType() {
            return userType ;
        }



    }
Kotlin

CurrentUser.getInstance().userType

在kotlin中,像这样获取用户类型

 val userType=CurrentUser.getInstance().userType

如果您使用ProGuard缩小代码,是否介意提供信息

如果是,请确保在proguard-rules.pro文件中添加模型类


exmp:-保留类packagename.models.*{*;}

重建并使缓存项目无效,然后重新启动android studio。 还同步文件系统。 我也有同样的问题,我做了这个把戏,它对我起了作用。
希望这能对您有所帮助。

在kotlin类中使用CurrentUser.java类时,我得到了NoClassDefFoundError。如何才能获得值usertype。?如果找不到我的类。?确保导入包是CurrentUsers的正确路径,然后使缓存无效android studio和重建项目我尝试了所有可能的解决方案(清除/重建/终止进程/等),但失败了。我没有使用pro guard。