Як підключити джерело бібліотеки підтримки Android у Eclipse?


79

Приєднувати вихідний код до зовнішніх бібліотек - це неймовірно. Де я можу знайти вихідний код пакета підтримки v4 ? Бажано, щоб це був zip-файл, який можна було б легко прикріпити до android-support-v4.jarEclipse.


4
imo @andr слід прийняти відповідь
Amir Uval

Відповіді:


66

Завантаживши пакет підтримки з Android SDK Manager, ви можете знайти вихідний код пакета підтримки в папці <android-sdks> / extras / android / support / v4 / src.


12
У моєму випадку він зберігався в C:\Program Files\Android\android-sdk\extras\android\compatibility\v4\src\java. Потім я взяв її зміст (андроїд папка) упаковують його в * .jar з допомогою цієї команди: jar cf android-support-v4-sources.jar android/. Я прикріпив цю банку до android-support-v4.jar (шлях побудови Java / налаштування бібліотеки в eclipse). Працює добре :)
Håvard Geithus

5
Здається, це зараз не працює. Як я можу змусити це працювати? я використовую adt 21.1. Джерело doc-файлу android-support-v4.jar або джерело Java не можна змінювати. Клацніть правою кнопкою миші проект, Властивості> Шлях побудови Java> Вкладка Бібліотеки, Приватні бібліотеки Android> android-support-v4.jar - Вкладене джерело: (Немає) - не можна змінювати. :(
Thupten

3
Гаразд, я працюю. Андроїд-підтримка-v4.jar потрібно бути в Referenced Librariesправій кнопки, Build Path.., Add to Path. Потім Referenced Libraries, клацніть правою кнопкою миші властивості на android-support-v4 та встановіть джерела.
Таптен

Ця відповідь повністю відповідає на питання ОП. Щоб прикріпити його до свого файлу jar в eclipse, див. Відповідь @andr
JRomero

@Thupten, ти тоді не посилаєшся двічі, коли одного буде достатньо?
Pacerier

122

Я просто хочу додати ще один спосіб приєднання джерел для бібліотеки підтримки. Для цього потрібен ADT у версії 20 або пізнішої . Імовірно, цей метод працює для всіх JAR-файлів, для яких встановлення джерела / розташування javadoc вимкнено контейнером. Ось що вам потрібно зробити:

  1. У android-support-v4.jarбібліотеці лежить в libsдиректорії вашого проекту. У цьому ж каталозі створіть звичайний файл властивостей Java, названий точно так само, як і відповідний JAR, але з доданим .propertiesрозширенням. Таким чином, для нашої бібліотеки підтримки це буде:
    android-support-v4.jar.properties.

  2. Відкрийте створений файл властивостей та встановіть значення властивості з іменем srcдо місця, де можна знайти джерела для цієї бібліотеки. Ваш файл повинен мати один рядок, наприклад:

    src=c:/apps/adt-bundle-windows-64bit/sdk/extras/android/support/v4/src
    
  3. Збережіть файл.

  4. Закрийте та знову відкрийте свій проект Android.

  5. Спробуйте переглянути один із класів підтримки. Вкладене джерело повинно працювати зараз.

У моєму випадку чудово працювало.

Зауважимо одне: якщо srcце не абсолютний шлях, його буде вирішено, починаючи з батьківського каталогу файлу JAR. На прикладі бібліотеки підтримки - якщо src=support/srcADT припустить, що джерела класів знаходяться в libs/support/src.

Короткий опис цієї функції, написаний її автором, можна знайти тут .

Якщо когось цікавить, як саме .propertiesобробляється цей файл, я рекомендую прочитати набір виправлень №4, особливо. зміни в eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/ internal/project/LibraryClasspathContainerInitializer.java:)

Редагувати

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


9
Це «офіційний» і рекомендований спосіб зробити це.
BoD

10
Зверніть увагу, що якщо у вас великий проект із кількома бібліотеками, на які посилаються, які, у свою чергу, посилаються на бібліотеку підтримки Android, ви повинні переконатися, що всі копії android-support-v4.jar є однаковими двійковими файлами. В іншому випадку ви отримаєте дивну помилку "невідповідність контрольної суми бла бла". Також буде імпортовано лише одну з цих копій бібліотеки підтримки, можливо, одну, що міститься у папці lib \ бібліотечних проектів. Щоб побачити, який із них використовується, відкрийте Провідник пакетів -> Залежності Android і перевірте, звідки імпортується бібліотека підтримки. Потім виконайте ту ж процедуру не для основного проекту, а для проекту бібліотеки.
WindRider

2
Спробувавши щось інше, я можу сказати, що це найкраща відповідь - слід прийняти як правильну.
Amir Uval

2
@Simulant - Я не фахівець з ActionBar compat lib, але з короткого погляду я припускаю, що для його використання вам доведеться імпортувати його як окремий проект Android Lib і посилатися на це як на залежність у вашому основному проекті, чи не так? Якщо так, то вам просто потрібно виконати описані тут кроки для каталогу "libs" проекту lib . Цей каталог повинен мати два .jarфайли: android-support-v4.jarі android-support-v7-appcompat.jarдля яких ви повинні мати можливість створювати згадані .propertiesфайли.
andr

5
Якщо ви використовуєте Windows, обов’язково використовуйте похилі риски в srcрядку.
Scutterman

83

Тут вирішено приєднати джерело бібліотеки підтримки в Eclipse Juno

Я припускаю, що ваш проект уже є android-support-v4.jarу вашому "Шляху побудови", під "Залежностями Android", але ви не можете до нього приєднати каталог джерел. (у "Вкладенні джерела" написано "Не можна змінювати"). Рішення:

  • Перейти до "Налаштування шляху побудови"
  • Додайте зовнішні JAR-файли> YourProject/libs/android-support-v4.jar (я знаю, що ваш проект вже посилався на нього, але не хвилюйтеся, просто додайте його ще раз).
  • Розгорніть банку та прикріпіть джерело до зовнішньої банки: android-sdk/extras/android/support/v4/src
  • Перейдіть на вкладку "Замовлення та експорт", підніміть зовнішню банку над "Залежностями Android"

Насолоджуйтесь навігацією в бібліотеці підтримки з джерелом!

якщо до вас приєднано "Тестовий проект Android" YourProject, YourProjectTestможливо, він більше не компілюється. У цьому випадку вам доведеться повернутися до "Замовлення та експорту" та потягнути зовнішню банку під "Залежності Android", щоб повернути ситуацію до звичного стану.


2
"Шлях побудови Java", а не "Шлях побудови конфігурації" для мене.
user123321

4
Це зробило всі необхідні кроки і працювало для мене! Останній крок (замовлення) залишився поза сторонами і дуже важливим.
cottonBallPaws

3
У мене був android-support-v4.jar, перерахований в Приватних бібліотеках Android (APL, який був перерахований над залежностями Android), тому мені довелося витягнути нещодавно доданий .jar над APL
Kuitsi,

1
Для запису, це працює також з іншими бібліотеками, а не лише з бібліотекою підтримки. / Капітан Очевидний
Еміль Лундберг

2
Ви не повинні цього робити. Це суперечить початковій установці стандартного додатка для Android. Я б порекомендував вам використовувати "офіційне" рішення @andr.
JRomero

16

Посилаючись на прийняту відповідь, також можна приєднати джерело прямо з каталогу, не створюючи файл .jar. На вкладці шлях до збірки Java / бібліотеки розгорніть android-support-v4.jar, виділіть «Вкладений файл джерела», натисніть «Редагувати ...», «Зовнішня папка ...», потім вкажіть на (android-sdk) \ extras \ android \ support \ v4.

Це було перевірено за допомогою затемнення індиго.

З коментарів:

Проблема неможливості додати джерело до бібліотеки підтримки, схоже, виникає, якщо ваша бібліотека підтримки знаходиться в папці "Залежності Android" вашого проекту. Обхідний шлях виходить із тієї ж вкладки "Шлях збірки Java / бібліотеки", натисніть "Додати зовнішні JAR-файли ..." та знайдіть файл .jar у своєму (android-sdk) \ extras \ android \ support \ v4 шляху. Потім він з’явиться у налаштуваннях вашого проекту в новій папці "Бібліотеки з посиланнями".


5
Якщо у вас немає помилки, яка не дозволяє вам приєднувати джерела до банки, звичайно.
Ixx

1
Це було б чудово, але моя кнопка "редагувати" сіра: /. Це помилка, про яку ви згадуєте lxx? Знайшли рішення?
проліт

3
Це все сіре, там написано "не можна змінювати"
Містер Сміт,

2
Проблема неможливості додати джерело до бібліотеки підтримки, схоже, виникає, якщо ваша бібліотека підтримки знаходиться в папці "Залежності Android" вашого проекту. Обхідний шлях - на тій самій вкладці "Шлях збірки Java / бібліотеки", натисніть "Додати зовнішні JAR-файли ..." та знайдіть файл .jar у своєму (android-sdk) \ extras \ android \ support \ v4 шляху. Потім він з’явиться у налаштуваннях вашого проекту в новій папці "Бібліотеки з посиланнями". Потім ви можете приєднати джерело до цього файлу .jar, як зазначено в оригінальній відповіді.
happydude

2

Для тих, хто любить стандартний файл jar-коду вихідного коду, що робить його більш зручним для управління джерелом та спільного використання проекту.

Наприклад:

../android-support-v4.jar
../android-support-v4-src.jar

Створити вихідний файл jar та вкласти його просто:

  1. cd до path_to_android_sdk / extras / android / compatibility / v4 /
  2. За допомогою улюбленої zip-програми, наприклад 7-zip, створіть zip-файл та назвіть його android-support-v4-src.jar. Першою папкою в банку має бути / scr.
  3. Скопіюйте файл у свій проект, у цьому прикладі він знаходиться в тій же папці, що і jar-код.
  4. У Eclipse приєднайте вихідну банку у властивостях проекту.

Дякую за вашу відповідь. Для створення архіву jar можна також використовувати програму jar, яка входить до складу JDK.
Håvard Geithus

1

Я просто видаляю автоматично згенерований, а потім вручну додаю його як бібліотеки Referencde.

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


0

Процес приєднання src та doc із шляху побудови працює для деяких, а для деяких не (як я). деякі ключові речі, про які слід пам’ятати

  1. Переконайтеся, що ви перебуваєте в Package Explorer, а не в Navigator Project .

  2. Якщо ви помістили android-support-v4.jar у папку libs під вашим проектом. чудово.

  3. Клацніть правою кнопкою миші на банку, побудуйте шлях .. Додати до шляху. (якщо Додати до шляху не відображається, тоді його вже додано. Ви побачите налаштування шляху ..)

  4. Як результат кроку 3, у дереві провідника пакунків з’явиться нова папка з назвою Бібліотеки з посиланнями . Відкрийте це дерево, знайдіть там android-support-v4.jar. Клацніть правою кнопкою миші на цій банці у посиланнях Бібліотеки , властивості. Потім встановіть там Java Source Attachment і Javadoc Location.

  5. Ви закінчили.

Шлях до мого вкладеного файлу Java. (Його зовнішнє розташування)

C: / Users / thupten / adt-bundle-windows-x86_64-20130514 / sdk / extras / android / support / v4 / src

Я використовував веб-сайт Android для документації домену Java

http://developer.android.com/reference/android/support/v4/app/package-summary.html


0

Я знайшов це для мене:

Для основної бібліотеки: android.jar:

src: sdk / sources / android-19 doc: sdk / docs / reference /

Для підтримки lib: android-support-v4.jar: (перед цим слід додати android-support-v4.jar як зовнішній jar (Властивості проекту -> Шлях побудови Java -> Бібліотеки, потім у вкладці «Замовити та експортувати» витягнути) ця бібліотека перед приватними бібліотеками Android)):

src: sdk / extras / android / support / v4 / src / java doc: http://developer.android.com/reference/android/support/v4/app/package-summary.html (не впевнений)


0

Після оновлення SDK та завантаження в нього документації:

  • Імпортуйте проект бібліотеки підтримки в провідник пакунків.
  • Створіть папку в бібліотеці та назвіть її приблизно так ext-jars.
  • Перемістити android-support-v4.jarдо ext-jarsпапки.

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

  • Клацніть правою кнопкою миші на проекті та натисніть на Властивості.
  • Клацніть на Шлях побудови Java у меню ліворуч, а потім виберіть вкладку Бібліотеки.
  • Клацніть, Add JARs...потім розгорніть проект і виберіть файл jar, який ви вже перемістили до папки ext-jars.

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

  • Розгорніть додану банку та виберіть, Source attachmentа потім натисніть Edit.
  • Виберіть, External locationпотім натиснітьExternal Folder...
  • Виберіть вихідну папку для служби підтримки v4, яка знаходиться в [sdk-path]/extras/android/support/v4/src

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

  • Виберіть Javadoc locationклацніть, Editпотім виберіть, Javadoc URLпотім клацніть Browse...і виберіть місце для Javadoc для підтримки v4, яке знаходиться в[sdk-path]/docs/reference/

введіть тут опис зображення - Виберіть Order and Exportвкладку та перевірте, що android-support-v4.jarви щойно додали.

Я пропоную вам також очистити проект і знову відкрити Eclipse.

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