Android 匕首没有建造

Android Dagger not building

我已经将 Dagger 添加到我的应用程序中。现在我在更新 Android studio 和项目更新到最新的 AndroidX 版本后遇到以下错误。

error: [RefersToDaggerCodegen] Don't refer to Dagger's internal or generated code
(see https://errorprone.info/bugpattern/RefersToDaggerCodegen)

如何解决这个构建错误。

编辑: 我正在尝试像下面那样注入匕首

((App) appContext).getApplicationComponent().inject(this);

以及界面内部

@SuppressWarnings({"RefersToDaggerCodegen"})
@Singleton
@Component(modules = {
    ApplicationModule.class,
    DatabaseModule.class,
    NetworkModule.class,
    QuranDataModule.class,
    QuranPageModule.class } )
public interface ApplicationComponent {
     @SuppressWarnings("RefersToDaggerCodegen")
      void inject(QuranDataProvider quranDataProvider);

编辑 2 我已经像下面这样初始化了组件:

 @SuppressWarnings("RefersToDaggerCodegen")
  protected ApplicationComponent initializeInjector() {
    return DaggerApplicationComponent.builder()
        .applicationModule(new ApplicationModule(this))
        .build();
  }

仍然面临同样的问题。

我的项目的问题是我使用的 Dagger 旧版本不太旧但不是最新的。所以我更新了kotlin版本和Dagger版本如下

kotlinVersion = '1.3.31'
daggerVersion = '2.15'

并在您的 gradle-wrapper.properties 中更新分布 url 如下

distributionUrl=https\://services.gradle.org/distributions/gradle-5.2-all.zip

最后也更新容易出错的版本

classpath "net.ltgt.gradle:gradle-errorprone-plugin:0.8"

我已经完成了以上所有步骤。现在我可以成功构建我的应用程序了。

感谢@EpicPandaForce 的帮助