Создайте Javadoc для моего Android-проекта
Я надеялся, что кто-то может помочь мне в создании javadoc для моего проекта eclipse. Когда я выбираю "Generate Javadoc" из меню проекта, я получаю много ошибок, таких как
cannot find symbol
symbol : class ListView
каждый раз, когда класс ссылается на класс API Android, поэтому я получаю только Javadocs, выведенный для классов, которые не ссылаются на какие-либо вещи для Android. Мое приложение компилируется и работает правильно, и в проекте устанавливается Android 1.6 lib (на пути сборки - раздел внешних банок).
Любые идеи, что я делаю неправильно?
Спасибо.
Дори
Ответы
Ответ 1
Я смог получить Javadocs, сгенерированный для всех моих классов, убедившись, что у меня есть компонент "Документация для Android SDK", установленный в Android SDK и AVD Manager, и выберите android.jar в качестве справочного архива на шаге 2 поколения Javadoc.
Он не создавал ссылки на ссылочные документы, но создавал документы для всех моих классов.
Ответ 2
Я был немного упрям и не настраивал Maven... надеюсь, этот пост помогает кому-то еще в той же лодке.
После небольшого количества проб и ошибок (и много предложений, полученных из нескольких поисков в Интернете), мне удалось заставить это работать с определенным ANT script, который можно запустить в Eclipse с помощью команды "Запустить как", > ANT Сборка ".
Я сохранил этот файл "javadoc.xml" в каталоге моего проекта параллельно с файлом AndroidManifest.xml.
Вот содержимое файла:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project basedir="." default="doc" name="api docs">
<target name="doc" description="my docs">
<javadoc destdir="docs" doctitle="Testing the Title" verbose="on"
use="true"
classpath="C:\Android\android-sdk_r04-windows\android-sdk-windows\platforms\android-2.1\android.jar;.\libs\admob-sdk-android.jar"
sourcepath="gen;src"
linkoffline="http://d.android.com/reference C:\Android\android-sdk_r04-windows\android-sdk-windows\docs\reference"
stylesheetfile="C:\Android\android-sdk_r04-windows\android-sdk-windows\docs\assets\android-developer-docs.css"
>
</javadoc>
</target>
</project>
Ответ 3
Что сработало для меня, это установить classpath для android.jar. В Eclipse: project → generate javadoc → 3-й шаг в разделе "дополнительные параметры javadoc". Например.
-classpath "C:\android-sdk-windows\platforms\android-11\android.jar"
Ответ 4
И для Ant пользователей без жесткого пути (для android sdk r20)
<target name="javadoc" depends="-set-debug-mode,-build-setup">
<echo>Generating javadoc</echo>
<property name="project.target.class.path" refid="project.target.class.path"/>
<property name="project.all.jars.path" refid="project.all.jars.path"/>
<javadoc access="private"
classpath="${project.target.class.path}:${project.all.jars.path}"
destdir="docs"
packagenames="${project.app.package}.*"
source="1.5" sourcepath="gen:src" />
</target>
Ответ 5
Конечно, есть проблема с генерацией андроида javadoc из Eclipse.
Я нашел обходное решение, используя maven и плагин javadoc со следующей конфигурацией (pom.xml
):
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>group</groupId>
<artifactId>artifact</artifactId>
<version>0.0.5-SNAPSHOT</version>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.6.1</version>
<configuration>
<links>
<link>file:/opt/android-sdk/docs/reference/</link>
</links>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>android</groupId>
<artifactId>android</artifactId>
<version>1.5</version>
<scope>provided</scope>
</dependency>
</dependencies>
</project>
адаптируйте свой каталог sdk android (/opt/android-sdk/
в примере).
Android-библиотеки также должны быть доступны в вашем локальном репозитории maven, вы можете использовать android-mvn-install script, чтобы установить их.
Как только этот pom.xml
находится в корневом каталоге проекта, вы сможете запустить As → Maven build... и настроить цель javadoc: javadoc (при условии, что в eclipse установлен плагин m2eclipse).
По умолчанию вывод будет находиться в каталоге target
.
Ответ 6
Вы можете определенно сделать это с Maven. В идеале вы можете использовать Maven Android Plugin для своей полной сборки. Это также позволит вам использовать такие вещи, как findbugs, checkstyle, pmd и т.д.
Документация содержится в вики проекта, а также в книге Maven: The Complete Reference http://www.sonatype.com/books/mvnref-book/reference/android-dev.html
Ответ 7
Если кто-то другой сталкивается с этой проблемой:
Android изменил имя таблицы стилей документации с "android-developers-docs.css" на "doclava-developer-docs.css" в версии R21 пакета ADT SDK. Не уверен точно, когда произошло изменение, и мы только заметили это изменение.
Ответ 8
С Maven:
Зависимость от Android (установлена через Maven Android SDK Deployer):
<dependency>
<groupId>android</groupId>
<artifactId>android</artifactId>
<version>4.2.2_r2</version>
<scope>provided</scope>
</dependency>
Конфигурация плагина Javadoc Maven:
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>2.9.1</version>
<configuration>
<additionalDependencies>
<additionalDependency>
<groupId>android</groupId>
<artifactId>android</artifactId>
<version>4.2.2_r2</version>
</additionalDependency>
</additionalDependencies>
</configuration>
<reportSets>
<reportSet><!-- by default, id = "default" -->
<reports><!-- select non-aggregate reports -->
<report>javadoc</report>
</reports>
</reportSet>
</reportSets>
</plugin>
</plugins>
</reporting>
Ответ 9
Эта статья статьи ilijamt помогла мне создать Javadoc для моего проекта, используя Ant.
В принципе, вам нужно добавить этот раздел в свой проект build.xml
<property name="docs.dir" location="javadoc" />
<property name="bin.dir" location="bin" />
<property name="source.dir" location="src" />
<property name="gen.dir" location="gen" />
<target
name="javadoc"
description="Generate JavaDoc documentation" >
<xmlproperty
collapseAttributes="true"
file="AndroidManifest.xml"
prefix="tm" />
<mkdir dir="${docs.dir}" />
<javadoc
access="private"
author="true"
classpath="${sdk.dir}/platforms/${target}/android.jar"
destdir="${docs.dir}"
linkoffline="http://d.android.com/reference ${sdk.dir}/docs/reference"
linksource="true"
sourcepath="${source.dir};${gen.dir}"
use="true"
version="true" />
<jar
basedir="${docs.dir}"
compress="${jar.compress}"
jarfile="${bin.dir}/${tm.manifest.package}_${tm.manifest.android:versionName}_javadoc.jar" />
</target>
<target
name="clean"
depends="android_rules.clean" >
<delete dir="${docs.dir}" />
</target>
Что позволяет запускать
ant javadoc
Ответ 10
В Eclipse вы должны добавить android.jar
к пути к классу проекта либо через свои свойства проекта, либо вручную отредактировать <path_to_your_project>/.classpath
.
Подробнее см. мой ответ fooobar.com/questions/154177/....
Ответ 11
Если вы используете Intellij IDEA, перейдите к Tools - Generate JavaDoc...
Укажите все настройки и установите параметры: -bootclasspath [path]\android-sdk\platforms\android-{version}\android.jar -encoding UTF-8 -docencoding utf-8 -charset utf-8
Дополнительная информация находится в post.