2012-07-18 38 views
1

我们为不同的Javadoc文件使用不同的第三方jar。我们必须将它们全部合并成一个Javadoc文件,以便与我们的产品一起分发。将不同的javadoc zip文件合并到单个javadoc zip文件中

有没有可能这样做?有没有可用的工具?

Atleast是否有任何工具,我输入。jar文件相关的一个jar和javadoc该jar,它生成.java(源代码)文件以及文档,以便我可以结合这些来源和生成所有图书馆的单一镜头的javadoc?

任何指针都会对我有很大的帮助。

+0

如果您已经拥有Javadocs和库的jar文件,为什么需要生成源代码?另外如果你需要源代码,为什么不下载它们? – 2012-07-18 07:12:39

+0

我的最终目标是生成单个javadoc.zip文件,其中包含所有合并的第三方库api。我认为至少我可以通过反向工程来为所有这些代码创建带有注释的代码,并生成单个镜头中的javadoc。 – Syam 2012-07-18 07:16:53

+0

Dó包裹在各个javadoc档案之间是否重叠? – 2012-07-18 07:41:32

回答

0

您可以将它们全部解包到同一个目录中并将它们重新打包。

你可以得到反编译器,它将.class文件转化为.java文件,但我不知道哪些将结合javadocs。如果它对您很重要,您可能必须手动执行此操作。

我原以为没有他们的许可分发第三方库的来源是坏主意

+0

如果你将它们全部解压到单个目录,那么有很多像index.html,overview-summary.html等文件将会相互覆盖。 我寻找反编译器(使用javadoc评论)的原因不是分发第三方库资源,但至少我可以合并生成的源文件并为单个镜头创建单个javadoc以用于整个源文件。 – Syam 2012-07-18 07:22:19

+0

我明白你在说什么了。我不知道自动执行此操作的方法。 – 2012-07-18 07:32:07

0

我认为最好的办法是下载所有三个库的源代码,将所有源代码放入一个IDE projcet(NetBeans,Eclipse ...),然后从那里生成文档。反编译.class文件,然后将它们与java文档结合起来似乎是一个坏主意。由于javadocs是从源生成的,所以将所有三个项目组合起来应该是最简单的。这表示它可能会是一个相当的工作。

另一种选择是从两个库中取出相关的位(文件夹)并将它们复制到第三个的根目录(首先解压缩javadocs jar)。例如Java 6 SE这些文件夹将是java,javaxorg。这些包含实际的文档文件,其余的仅仅是链接和框架以及其他html管道。从那里你可以创建一个脚本,通过其他两个库的类层次结构,并将它们添加到第三个库的html管道。虽然这将比仅从组合源重新生成文档的工作多得多。

+0

唯一的问题是我没有这些库的来源。 – Syam 2012-07-18 07:43:51

1

我想这样做,这个问题鼓励我走得更远。

我发现,为我工作的解决方案:

  1. 反编译所有的类文件有编译源文件。有几个反编译器可用(请参阅this question)。我首先尝试了Java Decompiler,但是它产生了太多的语法错误。我这样做是在南河然后,只产生了猜测参数名2个错误(在〜5000班):

    java -jar procyon-decompiler-0.5.26.jar -o src [jarfile.jar] 
    
  2. 产生的反编译类的Javadoc:

    javadoc -sourcepath src -d javadoc -subpackages com 
    

    这实际上产生垃圾因为你的源文件中没有javadoc文件。但是索引文件是正确的!

  3. 用您可用的javadoc中的相应文件夹替换软件包javadoc文件夹。对我来说,这意味着com文件夹。

相关问题