Android I';当试图使用房间数据库时,我收到一个NullPointerException

Android I';当试图使用房间数据库时,我收到一个NullPointerException,android,kotlin,android-room,Android,Kotlin,Android Room,我目前正在尝试第一次在我的应用程序中使用房间数据库。我的代码应该在用户添加日记条目时将其保存到数据库中,并在应用程序打开时将其加载到recyclerview中。但是,当我打开我的应用程序时,我不断遇到此错误: 2020-11-25 12:12:56.326 15563-15563/com.google.gradient.red E/AndroidRuntime: FATAL EXCEPTION: main Process: com.google.gradient.red, PID: 15

我目前正在尝试第一次在我的应用程序中使用房间数据库。我的代码应该在用户添加日记条目时将其保存到数据库中,并在应用程序打开时将其加载到recyclerview中。但是,当我打开我的应用程序时,我不断遇到此错误:

2020-11-25 12:12:56.326 15563-15563/com.google.gradient.red E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.google.gradient.red, PID: 15563
    java.lang.NullPointerException
        at com.google.gradient.red.database.JournalDatabase$Companion.getDatabase(JournalDatabase.kt:23)
        at com.google.gradient.red.ui.home.HomeFragment$onViewCreated$1.invokeSuspend(HomeFragment.kt:42)
        at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
        at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
        at android.os.Handler.handleCallback(Handler.java:938)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:223)
        at android.app.ActivityThread.main(ActivityThread.java:7656)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
这是我的密码:

package com.google.gradient.red.database
导入android.content.Context
导入androidx.room.Database
导入androidx.room.room
导入androidx.room.RoomDatabase
导入com.google.gradient.red.dao.JournalDao
导入com.google.gradient.red.entities.Journal
@数据库(实体=[Journal::class],版本=1,exportSchema=false)
抽象类JournalDatabase:RoomDatabase(){
伴星{
var journalDatabase:journalDatabase?=null
@同步的
fun getDatabase(context:context):日志数据库{
if(日志数据库!=null){
journalDatabase=Room.databaseBuilder(上下文,
JournalDatabase::class.java,
“journal.db”).build()
}
返回日志数据库!!
}
}
抽象趣味JournalDao():JournalDao
}
有人知道我的错误是什么意思吗?我认为这是说那里没有数据库,但我不知道如何才能真正解决我的问题


这是我第一次使用这个房间,我一直在努力解决这个问题,所以任何帮助都将不胜感激

如果您的条件不正确。应该是

if (journalDatabase == null) {
    journalDatabase = Room.databaseBuilder(context,
    JournalDatabase::class.java,
    "journal.db").build()
}
return journalDatabase!!   

请不要在其他平台上引用您的代码,请在此处包含您的所有信息。请记住,这个问题可能会在将来帮助其他人,如果您的代码从这些外部站点中删除,它将变得非常有用useless@a_local_nobody我编辑了我的问题,并从我的垃圾桶中输入了代码。我没想到一个月后垃圾桶会被擦干净,我道歉