无法找到导入javax.inject.Inject包

我正在尝试将Dagger实现为IntelliJ项目中的dependency injection器,但我的代码失败了:

import javax.inject.Inject; 

Intellij正在寻找’ javax ‘包,但不是’ inject ‘包,所以它失败了。

我是Android的新手,所以我很抱歉,如果这是一个没脑子,但任何人都可以告诉我为什么没有找到注入包?

Dagger依赖于JSR 330,这是用于dependency injection的Java标准注释(想想:@ @Inject ,@ @Singleton等)。

这是一个你必须包含的独立jar。 如果您使用的是具有集成依赖关系管理的构建系统(Maven,Gradle,Ant + Ivy,sbt),那么您可以免费获得。 如果您仍在复制jar子,那么您必须手动添加它。

您可以从Maven central (底部)下载最新的jar。

将其添加到您的pom.xml中

  javax.inject javax.inject 1  

如果有人使用普通的Java项目而不是Maven或Gradle等你可以从这里下载一个单独的Jar文件Inject Jar文件

然后添加到外部库,在IDEA中,您可以执行以下操作:文件 – >项目结构 – >库 – >新项目库(+)

然后找到库的路径并完成工作。

//dependency injection实现“com.google.dagger:dagger:$ rootProject.dagger2Version”

 // dependency injection implementation "com.google.dagger:dagger:$rootProject.dagger2Version" implementation { exclude(group: 'javax.inject', module: 'javax.inject') }