当前位置: 首页 > 知识库问答 >
问题:

找不到符号DaggerAppComponent,原因:java.lang.ExceptionInInitializerError

郎磊
2023-03-14

我试图用Mac M1在Android studio Arctic fox 2020.3.1中构建基于Dagger2的Android项目,但我遇到了错误,

错误:找不到符号导入xxxx.com.xxxx.di。DaggerAppComponent;^符号:类别DaggerAppComponent

这也显示了

原因:java.lang.异常

同一个项目在另一台机器上工作(不是mac)。

此外,我无法在android studio构建输出中看到编译器错误切换按钮。

请帮我解决这个问题。

完成生成输出,

执行任务:[: app: assembleDebug]在项目 /projects/Android/prototype

任务:app:preBuild最新任务:app:preDebugBuild最新任务:app:compiledbugaidl无源任务:app:compiledbugrenderscript无源任务:app:databindingmergeredependencyartifactsdebug最新任务:app:databindingmergeneclassedebug最新任务:app:generateDebugResValues最新任务:app:generateDebugResources最新任务:app:injectcrashticsmappingfileiddebug最新任务:app:processDebugGoogleServices最新任务:app:mergeDebugResources最新任务:app:databindinggenbaseclasses调试最新任务:app:dataBindingTriggerDebug最新任务:app:generateDebugBuildConfig最新任务:app:javaPreCompileDebug最新任务:app:checkdebugaarmata最新任务:app:createdebugcompatiblescreen最新任务:app:extractDeepLinksDebug最新任务:app:processDebugMainManifest最新任务:app:processDebugManifest最新任务:app:processDebugManifestForPackage最新任务:app:processDebugResources最新

以下注解处理器不是增量的:dagger-android-processor-2.16.jar(com.google.dagger:dagger-android-处理器:2.16),dagger-compiler-2.16.jar(com.google.dagger:dagger-compiler:2.16)。确保所有注解处理器都是增量的,以提高构建速度。/Users/sysadmin/Documents/projects/esp32/energy-monitor/Android/prototype/app/src/main/java/prototype/com/myapp/用户界面/规定/配对ctivity.java:22:错误:找不到符号导入prototype.com.myapp.di.DaggerAppComponent;^符号:类DaggerAppComponent位置:包prototype.com.myapp.di /Users/sysadmin/Documents/projects/esp32/energy-monitor/Android/prototype/app/src/main/java/prototype/com/myapp/用户界面/规定/规定ctivity.java:41:错误:找不到符号导入prototype.com.myapp.di.DaggerAppComponent;^符号:类DaggerAppComponent位置:包prototype.com.myapp.di /Users/sysadmin/Documents/projects/esp32/energy-monitor/Android/prototype/app/src/main/java/prototype/com/myapp/用户界面/飞溅/飞溅ctivity.java:20:错误:找不到符号导入prototype.com.myapp.di.DaggerAppComponent;^符号:类DaggerAppComponent位置:包prototype.com.myapp.di /Users/sysadmin/Documents/projects/esp32/energy-monitor/Android/prototype/app/src/main/java/prototype/com/myapp/界面用户/设备/AddApplianceActivity.java:15:错误:找不到符号导入prototype.com.myapp.di.DaggerAppComponent;^符号:类DaggerAppComponent位置:包prototype.com.myapp.di /Users/sysadmin/Documents/projects/esp32/energy-monitor/Android/prototype/app/src/main/java/prototype/com/myapp/用户界面/设备/事件/AddEventActivity.java:8:错误:找不到符号导入prototype.com.myapp.di.DaggerAppComponent;^符号:类DaggerAppComponent位置:包prototype.com.myapp.di /Users/sysadmin/Documents/projects/esp32/energy-monitor/Android/prototype/app/src/main/java/prototype/com/myapp/用户界面/欢迎/欢迎ctivity.java:10:错误:找不到符号导入prototype.com.myapp.di.DaggerAppComponent;^符号:类DaggerAppComponent位置:包prototype.com.myapp.di注意:一些输入文件使用或覆盖弃用的API。注意:使用-Xlint重新编译:弃用以获取详细信息。6个错误

任务:app:mergeDebugNativeDebugMetadata无源任务:app:mergeDebugShaders最新任务:app:compileDebugShaders无源任务:app:generateDebugAssets最新任务:app:mergeDebugAssets最新任务:app:compressDebugAssets最新任务:app:processDebugJavaRes无源任务:app:checkdebugdupleclasses最新任务:app:desugarDebugFileDependencies最新任务:app:mergextdexdebug最新任务:app:mergeLibDexDebug最新任务:app:mergeDebugJniLibFolders最新任务:app:mergeDebugNativeLibs无源任务:app:stripDebugDebugSymbols无源任务:app:validateSigningDebug最新任务:app:writeDebugAppMetadata最新任务:app:writeDebugSigningConfigVersions最新

失败:构建失败,但有一个异常。

  • 错误:任务执行失败:app:compiledBugJavaWithJavaC

java.lang.ExceptionInInitializerError

>

  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。运行--扫描以获得完整的见解。

    在https://help.gradle.org获得更多帮助

    此版本中使用了已弃用的Gradle功能,使其与Gradle 8.0不兼容。使用'--ward-mode all'显示单个弃用警告。请参阅https://docs.gradle.org/7.0.2/userguide/command_line_interface.html#sec:command_line_warnings

    生成在1s 29个可操作任务中失败:1个已执行,28个最新

  • 共有1个答案

    湛光明
    2023-03-14

    我很想发表评论,但我没有足够的声誉,无论如何,你们在你们的项目中使用房间吗?我也只有在我的Mac M1上有同样的问题,这是由room版本引起的,我将其更新为2.4.0-alpha03,从那时起它就可以正常运行了。如果没有,你可能想检查你正在使用的库的版本,但是的,只在Mac M1上,希望它能有所帮助。

     类似资料:
    • 问题内容: 错误: 出现的内容不起作用: 如果我写:“ InvoerVakhandler扩展了boven”,则该错误消失了,但是随后我得到了一个无限循环,最后程序崩溃并说堆栈溢出错误。 如果我尝试更改boven类中的“}”符号并将其放置在文本的末尾,那么我什至会收到更多错误消息。 问题: 我必须在代码中进行哪些更改才能使其正常工作? 注意: 我是Java的新手,我知道有更多类似这样的文章,但是由于

    • 这是我的片段: Java中的inputText片段: 原因:java.lang.IllegalStateException:Fragment de.company.android.inputtext.InputTextFragment没有创建视图。在Android.app.fragmentManagerimpl.oncreateView(fragmentManager.java:2253),在An

    • DBHelper。JAVA LoginSevlet.java 我正在尝试访问LoginServlet中的DBHelper类,而编译i做了javac DBHelper.javajavac-cp"C:\User\dell\Desktop\MYServlet\WEB-INF\lib\servlet-api-2.5.jar;"LoginServlet.javaLoginServlet.java:13:错误

    • 问题内容: 我一直试图弄清楚这一点,我已经在不同的程序中运行过它,因此它肯定在代码中。可能也很容易。错误说 Password2.java:90:错误:找不到符号if(pw.equals(password))^符号:变量密码位置:类Password2.EnterButtonHandler 1错误 这是代码: 问题答案: 阅读错误消息,喜欢错误消息。 这需要一些练习,但是过一会儿就很容易看清楚:只需将

    • 问题内容: 如果这是一个怪异的问题,我感到很抱歉,但是我刚刚开始OOP,并遇到了一个我应该制作的简单菜单驱动数学程序。我清除了编译器给我的所有错误,但是现在它给了我大约14个新错误,其中大多数被描述为“找不到符号”。这是我的代码: 这是新的编译器输出: 问题答案: 您从未在方法的主体中定义变量。尝试在方法中添加。简单地定义的变量并 没有 放弃对它的访问。如果要避免多次创建实例,可以执行以下操作 然

    • 问题内容: 我正在尝试为计算器编写第一个单元测试,但是NetBeans表示找不到符号和注释。 我应该包括一些东西吗? 我正在使用NetBeans 7.3.1和W7。 编辑:谢谢大家,将其导入为静态帮助。测试注释仅需包括 导入org.junit.Test; 问题答案: 是静态方法。由于不能使用静态方法而没有以静态方式显式导入它们,因此必须使用以下两种方法之一: 要么: 因为有点不同。是的注释,您可以