我正在编写一个Java应用程序,它将让我仅基于文件结构编译Java项目,这样我就可以在没有集成开发环境的情况下编写代码并进行编译。我目前遇到的问题是,我希望在编译时自动生成javadoc文档,但是虽然Java 6提供了JavaCompiler对象来使用,但我找不到使用javadoc命令的方法。
如何使用Java代码为我的项目生成javadoc HTML文档?
如何使用Java代码为我的项目生成javadoc HTML文档?
如果您不知道,Apache Ant和Apache Maven都是为了实现类似于您所编写的目标(在没有IDE的情况下进行编译)而存在的工具。
它们都内置了生成javadoc的支持。Ant语法如下:
<!-- publish javadoc -->
<target name="javadoc" description="Creates javadoc for IMP.">
<delete dir="${web-javadoc}"/>
<javadoc sourcepath="${source}"
defaultexcludes="no"
destdir="${web-javadoc}"
author="true"
version="true"
use="true"
windowtitle="IMP: Integrated Mechanisms Program"
overview="${source}/overview.html"
classpathref="debug.classpath"
stylesheetfile="${javadoc-theme}/stylesheet.css"
/>
<copy file="${javadoc-theme}/javadoc.jpg" tofile="${web-javadoc}/javadoc.jpg"/>
</target>
import com.sun.javadoc.*;
public class ListClass {
public static boolean start(RootDoc root) {
ClassDoc[] classes = root.classes();
for (int i = 0; i < classes.length; ++i) {
System.out.println(classes[i]);
}
return true;
}
}
javadoc
,它会给你一个选项列表。最简单的方法:javadoc -d your_output_directory -classpath your_classpath -sourcepath your_sourcefile_dir
lib/tools.jar
中的com.sun.tools.javadoc.Main
类中。请参考此链接。请参阅工具文档中的以编程方式运行标准 Doclet。
有一个 javadoc 命令,它随着 JDK 一起提供(在 Unix 平台上是 man javadoc)
然而,还有更好的方法。你是如何编译代码的?如果你正在使用自动化构建工具,比如 ant 或 maven,你可以添加一个 javadoc 任务来在编译代码时自动生成 javadocs。
http://ant.apache.org/manual/Tasks/javadoc.html
如需了解更多关于Ant(其他工具也有类似功能),请参阅您的工具文档以获取更多信息。
这就是我所做的,它运行得非常出色。