Android - Junit - протестированный проект использует внешний Jar - PullRequest
9 голосов
/ 12 октября 2010

У меня есть некоторый java-код (прекрасно компилируется для Android) в проекте библиотеки (LIB), который я хочу использовать в другом проекте Android (A).

Поскольку код LIB вряд ли сильно изменится,Я решил добавить его в качестве баночки в A. Он отлично работает.

У меня есть еще один проект, который представляет собой инструментальный проект Android, тестирующий первый проект Android (B).

Итак, что мыСейчас у меня есть A, включая LIB в качестве внешнего jar, и B, тестирующее A.

Проблема начинается, когда я хочу получить доступ из кода B, написанного на LIB.Из того, что я вижу, до тех пор, пока я не добавлю LIB в качестве внешнего jar-файла в B, он не сможет скомпилировать (то есть не сможет получить доступ к коду в jar-файле LIB, который включен в A).

Я не хочудобавьте LIB в качестве внешнего jar-файла в B, потому что: 1. Неправильно и 2. При запуске тестов происходит сбой с помощью:

java.lang.IllegalAccessError: Класс ref в пре-проверенный класс преобразован в неожиданную реализацию

Я обнаружил вопрос Майка , но его решение охватывает только компиляцию с использованием сценария ant, и в настоящее время я предпочитаю использовать Eclipse IDE для этого проекта.

Есть идеи, как решить эту проблему?

1 Ответ

1 голос
/ 18 января 2013

(чтобы убрать этот вопрос из фильтра «Без ответа» ...)

Решение обрисовано в общих чертах здесь:

Тестирование Android: внешние библиотеки

LIB следует экспортировать из A, чтобы сделать его доступным из B.

...