views:

321

answers:

2

There is JavaDoc of normal API of the JAVA with English version, a Chinese edition, but seems to become the separate source codes each.

+3  A: 

No, there is essentially no way of doing this.

The only work-around that comes to mind applies to the generated HTML pages: you could surround the JavaDocs in block elements that toggle between languages using CSS. Consider:

\**
 * <div class="en">Documentation in English</div>
 * <div class="nl">Documentatie in Nederlands</div>
 */
public void myFunction() {}

Subsequently edit the CSS of the JavaDocs so that the user can switch languages, e.g.:

div.en { display:none; }
div.nl { display:block; }
Paul Lammertsma
That's great idea, thanks.
xrath
Very good idea Thanks a lot! How to add Javascripts in JavaDoc?
ffffff
I see you already received an answer to your question here: http://stackoverflow.com/questions/1483141
Paul Lammertsma
A: 

The short answer is no. The existing javadoc comments and tools don't support this.

I don't think it would be a good idea to add support for embedding multiple translations of javadoc comments in the source code. It would not be a scalable solution:

  • As each new translation is added the source code files get bigger.
  • The multi-lingual descriptions would be very difficult to manage.

Consider that I'm an API developer who doesn't read / write Chinese. When I update the English javadocs, how do I flag that the Chinese javadoc comments need to be updated? What do we do about the problem that a potentially large number of translators need to update the source code files and could accidentally introduce regressions into the actual code? How does the release manager ensure that all translations are done before the "gold" release?

I think that a better (hypothetical) solution is to have a modified javadoc tool that extracts the javadoc comments into a version database. Then write a tool that that notices when a primary (e.g. English) javadoc comment changes in the databases, and prompts the technical writers / translators to make the corresponding changes in the Chinese, Dutch, etc translations of the javadoc.

Stephen C