我在源jar中覆盖反编译代码的原始源代码选择有限。
这很棒,因为它让我能够轻松地在调试时深入查看代码,但是它似乎有一个副作用,即禁用相关javadoc.jar中的javadoc而不是在eclipse中工作,尽管我有一个单独的javadoc.jar文件中包含javadoc。
我认为这种情况正在发生,因为eclipse正在查找“源代码”并假设所有的javadoc都在源代码中,因此无需检查javadoc.jar文件。
我希望能够告诉eclipse(最好使用maven)不要将sources.jar用于javadoc,只使用javadoc.jar。我仍然想使用sources.jar作为源代码。
我认为eclipse更喜欢从源代码中显示javadoc并且可能是错误的,所以如果是这样的话,请纠正我。
另外,我可能只是以错误的方式做一些简单的事情,所以如果是这样的话,请告诉我。
答案 0 :(得分:2)
我正在寻找同样的事情。我有一些我用jad创建的源jar(因为它们被反编译,它们中没有JavaDoc)并附加为源附件。我也附加了JavaDoc。这似乎是Eclipse的限制。它将从源代码中抓取JavaDoc并显示它(即使它是空的)而不是查看JavaDoc。我希望它会注意到源代码中缺少JavaDoc并尝试使用JavaDoc位置。如果我找不到解决方案,我将在Eclipse网站上发布问题和/或功能请求。
一种解决方法可能是集成到java反编译器(如jad)中检查源和javadoc的能力,并将javadoc放回源代码中。它也会有方法的参数名称,所以它可以把它们放回去。很多人都建议这样做,但我找不到任何人这样做过。
有几点需要注意。首先,jad在很长一段时间内都没有得到维护。 JD-Core / JD-Eclips网站已经消失。我还没有找到比jad更好的Java反编译器。所有优秀的Java反编译专家和解决方案都发生了什么?其次,使用“调整对齐”功能可能会很棘手,以确保JavaDoc注释不会占用更多空间。