Пакет Android javax.annotation.processing отсутствует - PullRequest
21 голосов
/ 11 марта 2012

Я хотел бы выполнить некоторую обработку аннотаций на основе примера по следующей ссылке: http://www.zdnetasia.com/writing-and-processing-custom-annotations-part-3-39362483.htm.

Однако я хотел бы реализовать это в своем проекте Android, и, похоже, я не могу использовать пакетс платформой Android.Нужно ли мне добавить внешнюю банку или мне чего-то не хватает?

Спасибо.

Ответы [ 6 ]

20 голосов
/ 07 июля 2015

Пакет javax.annotation.processing не включен в Android.Вам не нужно включать это в ваш модуль скомпилированного приложения.Вам просто нужна эта зависимость для вашего модуля компилятора / процессора во время сборки.Следовательно, в build.gradle вашего приложения вы должны добавить следующее после включения процессора аннотаций:

provided 'org.glassfish:javax.annotation:10.0-b28'
14 голосов
/ 02 ноября 2014

Существует гораздо более простой способ, если вы используете Android Studio / Gradle.

Я нашел следующее, просматривая ответы на вопрос Как добавить javax.annotation.Generated to Java SE 5? :

Для Gradleпостроить зависимость должна быть

compile 'org.glassfish:javax.annotation:10.0-b28'

8 голосов
/ 11 марта 2012

Пакет javax.annotation.processing не входит в Android, но команда Android VM описывает, как включить дополнительные javax пакеты сюда - это может быть применимо к вашему вопросу.

2 голосов
/ 13 апреля 2018

compileOnly 'org.glassfish: javax.annotation: 10.0-b28'

2 голосов
/ 31 марта 2016

Простое добавление компиляции 'javax.annotation: javax.annotation-api: 1.2' должно помочь.

см. Здесь для всех доступных версий: https://mvnrepository.com/artifact/javax.annotation/javax.annotation-api

0 голосов
/ 30 марта 2017

Я нахожу метод в ножах. Добавьте это в build.gradle:

compile files(org.gradle.internal.jvm.Jvm.current().getJre().homeDir.getAbsolutePath()+'/lib/rt.jar')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...