Javadoc в Eclipse не может распознать пакеты - PullRequest
35 голосов
/ 05 марта 2011

Благодаря этой теме я смог заставить ссылки Javadoc работать на мой проект Android в Eclipse на Windows. В частности, "{@link android.widget.Toast}" в настоящее время преобразуется в ссылку на "http://d.android.com/reference/android/widget/Toast.html?is-external=true".. Я добился этого с помощью опции Javadoc:

-linkoffline http://d.android.com/reference "Файл: / C: / Android / Android-SDK-окна / документы / ссылки"

Тем не менее, я получаю следующие ошибки, основанные на строках моего кода Java (не комментарии Javadoc):

C:\Users\Ellen\workspace\TestableToast\src\edu\mills\cs180\HelloAndroid.java:5: 
package android.view does not exist
import android.view.View;
                   ^ 
C:\Users\Ellen\workspace\TestableToast\src\edu\mills\cs180\HelloAndroid.java:6: 
package android.view.View does not exist 
import android.view.View.OnClickListener;
                        ^ 
C:\Users\Ellen\workspace\TestableToast\src\edu\mills\cs180\HelloAndroid.java:8: 
package android.widget does not exist
import android.widget.Toast;
                      ^ 
C:\Users\Ellen\workspace\TestableToast\src\edu\mills\cs180\HelloAndroid.java:10: 
cannot find symbol symbol: class Activity 
public class HelloAndroid extends Activity implements OnClickListener {
                                  ^

Как я могу исправить эти ссылки?

Ответы [ 8 ]

83 голосов
/ 10 января 2013

Это работает в Eclipse для меня:

  1. Проект -> генерировать Javadoc
  2. Перейти к разделу «Настройка аргументов Javadoc».
  3. в настройках виртуальной машины добавьте "-bootclasspath /path/to/sdk/platforms/android-##/android.jar"
40 голосов
/ 18 ноября 2011

Добавление параметра -classpath на последнем экране мастера «Создать Javadoc ...» не работает для меня: я получил сообщение об ошибке, в котором говорится, что параметр -classpath можно указать только один раз.

Не совсем решение, но обходной путь:

  • В мастере «Создать Javadoc ...» установите флажок «Сохранить настройки этого экспорта Javadoc как сценарий Ant». Это создает файл javadoc.xml в каталоге проекта
  • Редактировать javadoc.xml файл и редактировать атрибут classpath. В частности, добавьте туда "/path/to/sdk/platforms/android-##/android.jar" и любые другие файлы jar, в которых вы получите предупреждающие сообщения о
  • Создайте Javadoc с помощью: ant -buildfile javadoc.xml. Для удобства я поместил эту строку в javadoc.sh скрипт оболочки.
7 голосов
/ 01 февраля 2013

Project> генерировать Javadoc. Затем перейдите к «Настройка аргументов Javadoc» и в настройках виртуальной машины добавьте "-bootclasspath /path/to/sdk/platforms/android-##/android.jar".

работал для меня:)

7 голосов
/ 05 марта 2011

Вам также необходимо поместить классы Android в путь к классам Javadoc. Для этого добавьте файл jar для android в аргумент -classpath javadoc (как вы это сделали бы для своего компилятора).

Я понятия не имею, дает ли Eclipse и какой-либо вариант конфигурации для этого.

4 голосов
/ 24 апреля 2015

Благодаря ответу, предоставленному @ PaŭloEbermann и @ MarcelD-B, я смог понять основную причину проблемы.Тем не менее, так как я использую Android Studio, я был немного озадачен тем, где добавить argument.. Через некоторое время я смог окончательно выяснить это, и я помещаю это как ответ здесь для любого другого человека, который находитаналогичная проблема.

Для Android Studio откройте Tools > Generate JavaDocs и добавьте argument в Other command line arguments: -

-bootclasspath /path/to/sdk/platforms/android-##/android.jar

Примечание: - Естьнет необходимости добавлять какие-либо запятые в argument. Однако, если ваш SDK Path содержит пробелы, заключите путь в двойные кавычки (").Например, My SDK Path содержит пробелы, поэтому я использовал argument -

-bootclasspath "F:\Android SDK\platforms\android-21\android.jar"

JavaDoc generation screen on Android Studio

3 голосов
/ 05 марта 2012

ответы выше довольно хороши!включите classpath в ваш javadoc.xml и запустите его с помощью команды ant или eclipse -> Run As -> Ant Build

НО убедитесь, что в путях нет пробелов!У меня были эти проблемы с C: / Program Files / ..., и он не работал, пока я не изменил его на C: / Progra ~ 1 /...

, также не указав путь в кавычках,работа для меня.

2 голосов
/ 29 мая 2014

Решение Windows Eclipse

Добавление android.jar в -classpath действительно правильный подход.ANT не требуется, хотя и жизнеспособен.Если вы хотите использовать Eclipse GUI (File-> Export-> Java-> Javadoc) для генерации Javadoc, в диалоге нет возможности редактировать classpath.Вам нужно правильно установить classpath заранее.Два способа достижения этого:

  1. Отредактируйте вручную <path_to_your_project>/.classpath и добавьте следующую строку:

    <classpathentry kind="lib" path="<path_to_your_android_skd>/platforms/android-<version>/android.jar"/>
    
  2. Щелкните правой кнопкой мыши по своему проекту-> Свойства-> Путь сборки Java-> Библиотеки-> Добавить внешние JAR-> перейдите к <path_to_your_android_skd>/platforms/android-<version>/android.jar

Я обнаружил, что подход Eclipse GUI лучше, чем использование ANT, намекаемое в некоторых изответы здесь, потому что вы получаете кликабельные ссылки на ваш исходный код при любом предупреждении / ошибке Javadoc в консоли.При использовании ANT все, что вы получаете в консоли, это печатный вывод команды javadoc.exe.

1 голос
/ 23 апреля 2012

Этот обходной путь в eclipse работал для меня:

  1. Перейдите в Project => Свойства и выберите «Путь сборки Java»
  2. Выберите вкладку «Заказ и экспорт»
  3. Переместите «android 2.xx» и «Зависимости Android» в начало списка
...