Eclipse中的Javadoc无法识别包

感谢这个线程 ,我能够获得Javadoc链接,以在Windows上的Eclipse中为我的Android项目工作。 具体来说,“{@link android.widget.Toast}”目前转换为“ http://d.android.com/reference/android/widget/Toast.html?is-external=true ”的链接。 我用Javadoc选项实现了这一点:

-linkoffline http://d.android.com/reference“file:/ C:/ Android / android-sdk-windows / docs / reference”

但是,根据我的Java代码(不是J​​avadoc注释),我得到以下错误:

 C:\ Users \用户埃伦\工作空间\ TestableToast \ SRC \ EDU \钢厂\ cs180 \ HelloAndroid.java:5: 
包android.view不存在
导入android.view.View;
                    ^ 
 C:\ Users \用户埃伦\工作空间\ TestableToast \ SRC \ EDU \钢厂\ cs180 \ HelloAndroid.java:6: 
包android.view.View不存在 
导入android.view.View.OnClickListener;
                         ^ 
 C:\ Users \用户埃伦\工作空间\ TestableToast \ SRC \ EDU \钢厂\ cs180 \ HelloAndroid.java:8: 
包android.widget不存在
导入android.widget.Toast;
                       ^ 
 C:\ Users \用户埃伦\工作空间\ TestableToast \ SRC \ EDU \钢厂\ cs180 \ HelloAndroid.java:10: 
找不到符号符号:class Activity 
公共类HelloAndroid扩展了Activity实现OnClickListener {
                                   ^

我如何解决这些引用?

这对我来说在Eclipse中工作:

  1. 项目 – >生成Javadoc
  2. 转到“configurationJavadoc参数”。
  3. 在VM选项中添加“-bootclasspath /path/to/sdk/platforms/android-##/android.jar”

在“生成Javadoc …”向导的最后一个屏幕中添加-classpath参数对我不起作用:我收到一条错误消息,指出只能指定-classpath参数一次。

不是一个真正的解决scheme,而是一个解决方法:

  • 在“生成Javadoc …”向导中,选中“将此Javadoc导出的设置保存为Ant脚本”选项。 这将在项目目录中生成javadoc.xml文件
  • 编辑javadoc.xml文件并编辑classpath属性。 具体来说,添加“/path/to/sdk/platforms/android-##/android.jar”那里以及任何其他jar子,你会得到有关警告消息
  • 使用以下命令生成javadoc: ant -buildfile javadoc.xml 。 为了方便起见,我把这行放在一个javadoc.sh shell脚本中。

你也需要把android类放在你的javadoc类path中。 为此,将android jar文件添加到javadoc的-classpath参数中(就像您为编译器所做的那样)。

尽pipe如此,我不知道Eclipse是否提供了一些configuration选项。

项目>生成Javadoc。 然后,转到“configurationJavadoc参数”,在VM选项中添加“-bootclasspath /path/to/sdk/platforms/android-##/android.jar”。

为我工作:)

感谢@PaŭloEbermann和@ MarcelD-B提供的答案,我能够理解问题的根本原因。 不过,由于我使用的是Android Studio ,所以我对添加argument.位置感到困惑argument. 过了一段时间,我终于find了答案,我正在把这个问题作为对其他人发现类似问题的答案。

对于Android Studio ,打开“ Tools > Generate JavaDocs然后在“ Other command line arguments:添加以下Other command line arguments:

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

注意: –argument.不需要添加任何逗号argument. 但是,如果您的SDK Path包含空格,请将path用双引号( " )括起来。例如,我的SDK Path包含空格,所以我使用了argument

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

Android Studio上的JavaDoc生成屏幕

上面的答案是相当不错的! 在javadoc.xml中包含类path,并通过ant-command或eclipse – > Run As – > Ant Build运行

但确保path中没有空白! 我有这个问题与C:/ Program Files / …它不工作,直到我把它改为C:/ Progra〜1 / …

也把path引用不适合我。

Windows Eclipse解决scheme

android.jar添加到-classpath确实是正确的方法。 没有ANT是必要的,虽然也是可行的。 如果您想要使用Eclipse GUI(文件 – >导出 – > Java-> Javadoc)来生成Javadoc,则无法在对话框中编辑类path。 您需要事先正确设置类path。 两种方式来实现这一点:

  1. 手动编辑<path_to_your_project>/.classpath并添加以下行:

     <classpathentry kind="lib" path="<path_to_your_android_skd>/platforms/android-<version>/android.jar"/> 
  2. 右键单击你的项目 – > Properties-> Java Build Path-> Libraries-> Add External JARs – >导航到<path_to_your_android_skd>/platforms/android-<version>/android.jar

我发现Eclipse GUI方法比使用ANT暗示的一些答案更好,因为在Console中的任何Javadoc警告/错误上都可以获得对源代码的可点击引用。 在使用ANT时,您在控制台中获得的是javadoc.exe命令的打印输出。

这个在Eclipse中的解决方法为我工作:

  1. 转到Project => Properties并select“Java Build Path”
  2. select“订单和导出”标签
  3. 将“android 2.xx”和“Android Dependencies”移动到列表顶部