Не удается найти пакет импорта javax.inject.Inject
Я пытаюсь реализовать Кинжал как инжектор зависимостей в проекте IntelliJ, но мой код не работает:
import javax.inject.Inject;
Intellij находит пакет "javax", но не пакет "inject", поэтому он терпит неудачу.
Я новичок в Android, поэтому прошу прощения, если это не проблема, но может ли кто-нибудь сказать мне, почему пакет инъекций не найден?
Ответы
Ответ 1
Кинжал зависит от JSR 330, стандартных аннотаций Java, которые используются для инъекции зависимостей (думаю: @Inject
, @Singleton
и т.д.).
Это отдельная банка, которую вы должны включить. Если вы используете систему сборки со встроенным управлением зависимостями (Maven, Gradle, Ant + Ivy, sbt), вы получите это бесплатно. Если вы все еще копируете банки, вы должны добавить их вручную.
Вы можете загрузить последнюю банку из Maven central (внизу).
Ответ 2
добавьте это в свой pom.xml
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
</dependency>
Ответ 3
Если кто-либо использует простой Java-проект, а не Maven или Gradle или e.t.c. Вы можете скачать отдельный Jar файл здесь Вставить Jar файл
а затем добавьте в свои внешние библиотеки, в IDEA вы можете сделать это следующим образом:
Файл → Структура проекта → Библиотеки → Новая библиотека проекта (+)
Затем найдите путь к библиотеке и задание выполнено.