Я столкнулся со следующей проблемой:
1) У меня есть библиотека (выбрана «[x] Is Library»), созданная в Eclipse.Имеется 2 макета (main.xml и еще один).
2) Это работает очень хорошо, когда я использую его в одном Eclipse Workspace - я могу легко включить его в другой проект и использовать его без проблем.
3) В последнее время мое рабочее пространство стало огромным, и Eclipseдаже медленнее, чем раньше (и я работаю над нетбуком с процессором Intel Atom).Поэтому я решил создать новый.
4) Я скопировал файл mylibrary.jar из его папки bin, в том числе library.jar в новом проекте работал хорошо.Все компилируется, но во время выполнения макет java.lang.NoClassDefFoundError: my.namespace.mylibrary.R $ запускается при запуске.
Что я сделал:
1) Я попытался найти решение здесь на stackoverflow, но NoClassDefFoundError в проекте внешней библиотеки для Android - это то, что я нашел, но у меня уже естьдобавлен файл jar.
2) Затем я просмотрел файл jar (переименованный в zip & unpacked) и увидел, что класс макета R $ там не включен .
Как включить классы макета в файл library.jar?
Это действительно источник моей проблемы или я делаю что-то еще не так?
Спасибо за совет.
Редактировать: Я проверил, и удаление макетов XML из библиотеки (например, создание фиктивного макета в коде) останавливает NoClassDefFoundError.Тем не менее, глядя на файл admob.jar, кажется, можно включить класс R & layout в файл jar.