Як прикріпити javadoc або джерела до банок у папці libs?


254

Нова версія плагіна ADT r17 для Eclipse додала функцію для автоматичного встановлення залежностей від JAR. Будь-які файли .jar у папці / libs додаються до конфігурації збірки зараз. На жаль, контейнер Classpath для Android Dependitions не змінюється.

Класифікація андроїдних залежностей, що не змінюються

Як я можу приєднати javadoc та джерела до автоматично вставленого .jar (з папки / libs)?


Я не думаю, що на ваше запитання відповіли. Прийнята відповідь Марка дає саме те, що ви попросили НЕ бути рішенням. Як ми можемо приєднати javadoc та джерела за допомогою автоматичних ліфтів (а не через ручні банки)?
pjv

2
Існує проблема для цієї помилки code.google.com/p/android/isissue/detail?id=27490#c21 . У коментарі 21 сказано, що приєднання джерел / javadoc буде можливим в ADT r20 зі стандартним файлом java .properties (foo.jar -> foo.jar.properties), який дозволяє редагувати відносний або абсолютний шлях до папки джерела (або архіву) та / або відносний або абсолютний шлях до явадока.
Сергій Печенізький

Відповіді:


401

Найкращий спосіб відповісти на ваше запитання - це узагальнити відповіді Xavier , plastiv , VinceFR та Christopher .

Покрокове керівництво

Для того, щоб зв’язати джерела та javadoc з бібліотекою .jar, яка автоматично пов'язана Eclipse, потрібно зробити наступне:

  1. Помістіть файл .jar бібліотеки у папку libs та пов’язані з ними файли .jar та doc .jar в окремі підпапки, такі як libs / src та libs / docs . Якщо ви хочете, можете використовувати інше, ніж src та docs , але важливо, щоб .jar файли не знаходилися безпосередньо в папці libs .
  2. Створіть .propertiesфайл у папці libs з точною назвою фактичної бібліотеки .jar (див. Приклад). Не забудьте зберегти .jar частину.
  3. Укажіть відносні шляхи до джерел та javadoc .jar у .propertiesфайлі.
  4. Закрийте та знову відкрийте проект Eclipse! За бажанням оновіть проект, натиснувши F5.
  5. Виберіть об'єкт зв'язаної бібліотеки у вихідному коді.
  6. Відкрийте подання Javadoc у програмі Eclipse, щоб перевірити документацію (див. Скріншот).
  7. Відкрийте заявку вихідного коду (ярлик за замовчуванням:) F3вибраного об'єкта.


Приклад

У прикладі використовується бібліотека Gson .

Структура каталогу папки libs:

libs
├── docs
   └── gson-2.2.2-javadoc.jar
├── gson-2.2.2.jar
├── gson-2.2.2.jar.properties
└── src
    └── gson-2.2.2-sources.jar

Зміст gson-2.2.2.jar.properties

src=src/gson-2.2.2-sources.jar
doc=docs/gson-2.2.2-javadoc.jar


Додаткова інформація

Звичайно, можна перемістити javadoc та джерела .jar в інші папки та вказати відносні шляхи. Це залежить від вас. Розміщення вихідних та javadoc банок безпосередньо в папці lib можливо, але не рекомендується , оскільки це призводить до того, що документація та вихідний код будуть включені у вашу програму .


Знімок екрана панелі Java Eclipse JavaDoc:

Перегляд JavaDoc в Eclipse

Знімок екрана проекту Eclipse з використанням Gson та Android 4.2.2 .:

Скріншот проекту тестування затемнення


Посилання на розпаковані файли javadocs

У випадку, якщо ви хочете посилатися на javadocs, які не надаються як упаковані, .jarа просто як файли та папки, як запитує розробник Android в коментарях, зробіть наступне:

  1. Помістіть бібліотеку .jarв libs/папку
  2. Створіть yourlibraryname.jar.propertiesфайл ( не забудьте.jar ) із наступним вмістом:

     doc=docs
  3. Додайте папки javadocs у libs/папку.

Вам слід створити таку структуру папок:

├── docs
   ├── allclasses-frame.html
   ├── allclasses-noframe.html
   ├── com
      └── google
          └── ads
              ├── Ad.html
                 ....
              └── package-tree.html
      ...
   └── stylesheet.css
├── GoogleAdMobAdsSdk-6.4.1.jar
└── GoogleAdMobAdsSdk-6.4.1.jar.properties

Не забудьте закрити та знову відкрити проект Eclipse, як згадувалося вище! Ось скріншот робочого прикладу проекту з посиланням на бібліотеку Android GoogleAdMobAds .

Проект Eclipse від GoogleAdMobAds для бібліотеки Android


7
А-а-а, саме для мене було потрібно закриття та відновлення проекту Eclipse. (Я кілька разів освіжався та чистив, не маючи до цього удачі.)
Стів Хейлі,

4
Дякую @JJD, що працював чудово. Мені просто довелося перезапустити Eclipse, перш ніж воно почало працювати.
javajavajaваваява

26
Примітка: Ви дійсно повинні помістити Javadoc та вихідні JAR у підкаталог, наприклад "./libs/docs", інакше ці JAR будуть вбудовані у ваш APK! Крім того, ви не зможете включити Javadoc для декількох бібліотек, оскільки створення APK не вдасться, коли він знайде повторювані HTML-файли.
Крістофер Орр

5
Чи можна посилатися на віддалений javadoc з файлу .properties? Так: doc = community.versant.com/documentation/reference/db4o-8.0/java/api
Маттіас

9
Мабуть, це не працює, якщо ви збираєтеся лише зв’язати Javadoc, а не вихідний код, мені довелося витягти банку Javadoc із 7zip до папки в розділі "Мої документи", а потім файл властивостей вказати на папку з індексом Javadoc. .html безпосередньо подобається так doc = C: \\ користувачі \\ johny \\ робоча областьnewfb \\ robotium-solo-4.0-javadoc
mbwasi

25

У Windows вам слід уникнути зворотної косої риси для посилань на doc та src-шляхи у файлі властивостей. Наприклад, для android-support-v4.jar вміст файлу властивостей виглядає приблизно так:

doc=C:\\Program Files (x86)\\Android\\android-sdk\\extras\\android\\support\\v4\\docs
src=C:\\Program Files (x86)\\Android\\android-sdk\\extras\\android\\support\\v4\\src

1
вау, ваша відповідь вирішила мою проблему, я поклав одну \ але ми повинні поставити \\ .настільки дякую
Arash

17

Відповідь надходить з http://code.google.com/p/android/isissue/detail?id=27490#c21

У папці libs ви повинні мати:

doc(folder)
    foo_doc(folder)
        index.html
        ...
        ...
foo.jar
foo.jar.properties

А у своєму foo.jar.properties, просто кажуdoc=./doc/foo_doc

Можливо, вам доведеться оновити свій проект, очистити його, закрити і знову відкрити його.

Це працює для мене!


Якщо у вас є документи в zip-файлі, це шлях, велике спасибі !! великі пальці вгору
Akhil Jain

10

Я спробував усе вищесказане, і жоден з них не працював на мене. Я зрозумів метод, який завжди буде працювати. В основному винуватцем є те, що ADT поводиться з папкою "libs", тож я вийшов із папки "libs". Натомість я створив папку "бібліотеки" і використав її.

Ви можете зробити наступне, і це завжди буде працювати - навіть якщо ADT повинен змінити те, як він зміниться, як він обробляє папку "libs" у майбутньому:

  1. Створіть папку "бібліотеки".
  2. Створіть під нею підпапку для кожної бібліотеки.
  3. Покладіть всі файли для кожної бібліотеки у відповідну папку (файл jar jar, вихідний файл jar, файл jar-javadoc тощо).
  4. Додайте файл jar-файлу для кожного проекту на вкладку «Бібліотеки» для шляху збірки Java, натиснувши Add Jars...кнопку, щоб додати банку з підпапки бібліотеки у папці «бібліотеки».
  5. До кожного проекту додайте джерело / javadocs, відкривши проект на вкладці «Бібліотеки», вибравши потрібний елемент та натиснувши Edit...кнопку, щоб додати джерело / javadocs з підпапки бібліотеки у папці «бібліотеки».
  6. Поставте прапорець для кожного проекту на вкладці «Замовлення та експорт» для Java Build Path.
  7. Перевіривши, що всі бібліотеки переміщено, видаліть папку "libs".

Дотримуючись вищеописаної процедури, ваш проект матиме папки, які мають такий вигляд:

введіть тут опис зображення

Ваш шлях до збірки Java буде виглядати приблизно так:

введіть тут опис зображення

У розділі "Порядок та експорт" бібліотеки позначаються:

введіть тут опис зображення


5

Поки перенесіть бібліотеку, до якої потрібно Javadoc lib. Вони додають цю бібліотеку до Build Pathі додають Javadoc.

Перегляньте цей коментар у проблемах з Android.


Не забудьте (як я) перевірити порядок і встановити бібліотеку для експорту в Build Path.
Карлос Собриньо

4

На ADT 22 я не міг отримати доступ до Javadoc як для commons-io-2.4.jar, так і для Android-support-v4.jar

Ось як я це зафіксував:

  1. Попередня умова: обидві бібліотеки перелічені у розділі "Посилання на бібліотеки".

  2. Клацніть правою кнопкою миші на commons-io-2.4.jar та виберіть "Властивості". З'явиться це вікно:

введіть тут опис зображення

commons-io-2.4.jar в комплекті з commons-io-2.4-javadoc.jar, тому я вказав Javadoc в архіві шлях до зовнішнього файлу.

Я зробив те ж саме для бібліотеки підтримки: клацніть правою кнопкою миші на android-support-v4.jar і виберіть "Властивості". З'явиться цей екран:

введіть тут опис зображення

Цього разу я вказав шлях до вихідного каталогу.


Це, безумовно, найпростіший і найпряміший метод приєднати javadoc та / або src до бібліотеки. Дякую! Як додана примітка, ні javadoc, ні src не повинні знаходитись у згаданій бібліотеці.
срібло

3

Посилання на бібліотеку на commons-io-2.0.1.jar було порушено, коли я перейшов до SDK Tools та ADT версії 17.

Для вирішення проблеми я використав Project -> Properties -> Java Build Path і вибрав вкладку «Бібліотеки». Я видалив будь-яку посилання на commons-io-2.0.1.jar, а потім застосував Add Jar, щоб повторно додати commons-io-2.0.1.jar до проекту. Потім натискаю стрілку '>' поруч із назвою бібліотеки, щоб розширити посилання на бібліотеку, і я застосував кнопки редагування для встановлення джерела вкладення та розташування Javadoc.

Вибачте, що не можу розмістити зображення, оскільки мені не вистачає повторень (будь ласка ...).


Не працювало для мене. Де у вашому проекті зберігається файл jar? У мене папка в libs.
Даніель Райан

Нарешті хтось дав інструкцію, яка насправді спрацювала! Дуже вам дякую. Жоден із згаданих вище методів, включаючи файл ".properties", не приніс мені нічого корисного, але це додавання бібліотеки як зовнішньої JAR на екрані діалогу зробило цю роботу.
AlxDroidDev

1

Здається, це рухома ціль, але, зібравши шматочки та шматки з багатьох місць (включаючи відповіді на це саме запитання, яке допомогло, але не вдалося описати всі необхідні деталі, або, можливо, система тим часом трохи змінилася), здається, це рішення, принаймні станом на сьогодні (28 серпня 2013 р.).

  • Відкрийте папку для своїх javadocs десь не всередині вашого проекту.
  • Помістіть ваші javadocs туди, як розпакувати, кожен у свою папку.
  • Всередині своєї libпапки додайте xxx.jar.propertiesфайл для кожної лібрики, з якою ви хочете пов’язати javadoc.
  • У цьому файлі властивостей зверніться до папки, в яку ви розпакували відповідний javadoc (у Windows, уникнути зворотних нахилів):

doc=d:\\Android\\javadoc\\libGoogleAnalyticsServices

  • Закрийте і знову відкрийте свій проект у Eclipse (оновлення недостатньо). Тепер ви повинні побачити підказки, коли наведіть курсор на відповідні класи.

Якщо не дотримуватися жодного з цих кроків (не розпаковуючи javadoc, посилаючись на файл замість папки тощо), схоже, це порушує його.


1

Я знаю, що це питання досить старе, але коли я вчора зіткнувся з тією ж проблемою, і рішення, розміщене вище, було занадто дратує мене, я дізнався, що можна легко додати визначення вихідного шляху до файлу .classpath проекту. Потім затемнення адаптуватиме його, і ви зможете переглядати джерело.

запис на уроці раніше:

<classpathentry kind="lib" path="[PATH_TO_MY_JAR]"/>

Після додавання шляху до джерела

<classpathentry kind="lib" path="[PATH_TO_MY_JAR]" sourcepath="[PATH_TO_MY_SOURCE_JAR]"/>

Сподіваюсь, це допомагає


0

просто оновіть плагін ADT. Це працювало для мене !!

  1. Почніть Eclipse, потім виберіть Довідка> Встановити нове програмне забезпечення.
  2. У верхньому правому куті натисніть кнопку Додати.
  3. У діалоговому вікні "Додати репозиторій", що з’явиться, введіть "Плагін ADT" для Імені та наступної URL-адреси для місцезнаходження: https://dl-ssl.google.com/android/eclipse/ Примітка. На веб-сайті для оновлення інструментів розробника Android потрібен безпечне з'єднання. Переконайтеся, що URL-адреса веб-сайту для оновлення починається з HTTPS.
  4. Натисніть кнопку ОК. У діалоговому вікні "Доступне програмне забезпечення" встановіть прапорець поруч із "Інструменти для розробників" і натисніть кнопку Далі.
  5. У наступному вікні ви побачите список інструментів для завантаження. Клацніть Далі.
  6. Прочитайте та приймайте ліцензійні угоди та натисніть кнопку Готово.
  7. Якщо ви отримаєте попередження про безпеку, що говорить про неможливість встановлення автентичності чи дійсності програмного забезпечення, натисніть кнопку ОК.
  8. По завершенні установки перезапустіть Eclipse

Сподіваюся, що це допомагає!


0

Для будь-якого банку, якщо ви хочете бачити довідку Javadoc на підказці під час кодування, виконайте наступне: Клацніть правою кнопкою миші ваш проект> Властивості> Шлях збірки Java> Вкладка Бібліотеки. Клацніть стрілку біля вашої банки, щоб розгорнутись.

Додаток до джерела має вказувати на розташування фактичної баночки (можливо, саме у вашій папці Java).

Розташування Javadoc : у вас є два варіанти: URL та архів. Якщо ваші javadocs для цієї баночки є у формі папки, що містить файл index.html на першому рівні, виберіть "URL-адресу Javadoc" та вкажіть на цю папку. Якщо ваші javadocs знаходяться в банку, виберіть "Javadoc в архіві" та наведіть курсор на банку. Не забудьте перезапустити робочу область / закрити і знову відкрити проект, щоб оновити підказку з інформацією про Javadoc.

Я сподіваюся, що це допоможе дати просту відповідь на те, що, на мою думку, має бути дуже простим завданням.


0

Моє рішення:

Завантажте плагін затемнення під назвою: "Функція Java Source Attacher".

Пізніше виберіть банку і приєднайте вихідний код за допомогою цього плагіна. Клацніть у файлі банку, щоб вибрати його, клацніть правою кнопкою миші, а потім виберіть "приєднати джерело Java".

Якщо у вас є вихідний код, у вас автоматично з'являється javadoc.

Тепер ви можете використовувати F2 над класами для перегляду асоційованого javadoc.

Насолоджуйтесь

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.