Подтвердить что ты не робот

Jar этого файла класса принадлежит контейнеру "Android Dependencies", который не позволяет изменять исходные вложения в своих записях

Я делаю приложение электронной почты, которое дает ошибку в заголовке этого вопроса. Как я могу исправить эту проблему, я предоставляю свои коды для печати, если это не поможет найти решение. Я могу дать код сурки.

Любая помощь будет оценена.

enter image description here

4b9b3361

Ответ 2

Это официальное решение:

Разрешить привязку src/doc для сторонних баннеров в libs/

Поскольку эти банки добавляются динамически через контейнер пути к классам, разработчики не могут установить исходный путь и javadoc через интерфейс Eclipse (контейнер не позволяет редактировать их). Чтобы исправить это и убедиться что оба пути подхватываются не только текущим проектом, но и также другими проектами (если текущий проект является библиотечным проектом), значение устанавливается файлом, сидящим рядом с файлом jar. Файл имя после файла jar, добавив в конце .properties. Например foo.jar → foo.jar.properties В настоящее время он может содержать 2 свойства: src: относительный или абсолютный путь к исходной папке (или архиву). документ: относительный или абсолютный путь к javadoc.

https://android-review.googlesource.com/#/c/35702/

EDIT: Объяснение в Google I/O 2012 видео

Пример, для Joda-Time 2.1:

cd $PROJECT/libs
touch joda-time-2.1.jar.properties

И вставьте следующее, убедившись, что путь правильный:

src=/Users/josh.oneal/SDKs/joda-time-2.1/joda-time-2.1-sources.jar
doc=/Users/josh.oneal/SDKs/joda-time-2.1/joda-time-2.1-javadoc.jar

Теперь вы можете щелкнуть правой кнопкой мыши свой проект в Eclipse и обновить, затем Command/Ctrl + Щелкните класс, например DateTime, чтобы просмотреть его источник.

Ответ 3

Когда вы используете eclipse, вы можете исправить его, выбрав проект библиотеки и перейдите в "Свойства" > "Заказ и экспорт" и переместите свою зависимость src над зависимостями gen. Вы также можете вручную отредактировать файл .classpath, чтобы сделать то же самое. Исходные вложения должны работать после очистки этого проекта. Кредиты для выяснения решения идут в NightCrawler

Ответ 4

Обратите внимание на обходной путь в комментарии 8

http://code.google.com/p/android/issues/detail?id=27490#c8. "Привет, у меня есть решение проблемы, описанной в комментарии 3:

  • Переместить содержимое из папки libs обратно в lib, поскольку ADT 17 автоматически добавляет все банки из каталога libs в зависимости от Android.
  • Добавить зависимости из вашего каталога lib в качестве обычной зависимости eclipse (старый путь до ADT 17). Свяжите файлы JAR с их исходными файлами JAR или Javadoc.
  • В свойствах проекта → путь сборки Java → Заказ и экспорт проверяют все ваши добавленные зависимости, которые будут включены в файлы классов проекта.
  • Выберите "Инструменты Android" > "Исправить свойства проекта"

Ответ 5

Имела ту же проблему при использовании javax.mail для доступа к gmail. Согласно этой ссылке (http://stackoverflow.com/questions/6546926/could-not-find-class-error-when-trying-to-upload-a-video-to-youtube-using-the-gd), похоже, с ним и с Android есть какая-то проблема.

Я решил это, используя эти JAR файлы, здесь: http://code.google.com/p/javamail-android/

Ответ 6

Наконец-то я нашел реальное и самое простое решение.

ЭТО ИСПОЛЬЗОВАНИЕ ИДЕИ И ВСЕГДА РАБОТАЕТ. СИЛЬНОЕ РЕШЕНИЕ.

Если у вас сложная структура, в которой один проект библиотеки использует библиотеку, и этот проект библиотеки используется для вашего проекта и т.д. Или в любом случае... сделайте это, чтобы решить эту проблему:

Импортировать, чтобы затмить библиотеку, в которой вы хотите увидеть исходный код для процесса отладки.

Отметить вариант библиотеки, щелкнув правой кнопкой мыши по проекту > Propertie > Android

Затем перейдите ко всем библиотечным проектам, которые используют эту библиотеку, и щелкните правой кнопкой мыши проект > Propertie > Android > Добавить > и выберите свою библиотеку.

Затем перейдите в проект и проект библиотеки, который находится в Project > Properties > Android > Library_name, нажмите "Удалить" и добавьте его снова, чтобы иметь возможность принять изменения в проекте библиотеки.

И это все. Он просто использует проект самой библиотеки, а не просто использует банку библиотеки, которую вы хотите увидеть в исходном коде.

По всем вопросам, помогая вам реализовать это, просто напишите мне.

Ответ 7

Также попробуйте это решение: перейдите в папку проекта и откройте файл .classpath. Здесь re-order classpathentry таким образом

<?xml version="1.0" encoding="UTF-8"?>
    <classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="gen"/>

Сначала <classpathentry kind="src" path="src"/>, а второй - <classpathentry kind="src" path="gen"/>. В моем случае он решает все проблемы.