Uploaded image for project: 'JDK'
  1. JDK
  2. JDK-8046096

JEP 106: Add Javadoc to javax.tools

XMLWordPrintable

    • Icon: JEP JEP
    • Resolution: Delivered
    • Icon: P4 P4
    • 8
    • tools
    • None
    • Jonathan Gibbons
    • Feature
    • Open
    • SE
    • 199 MR
    • compiler dash dev at openjdk dot java dot net
    • S
    • S
    • 106

      Summary

      Extend the javax.tools API to provide access to javadoc.

      Motivation

      It is increasingly common to want to invoke tools via an API, as part of a larger software environment, instead of by exec-ing a new process. This provides improved performance by avoiding the need to start additional JVMs, and by providing an API for more type-safe invocation.

      Description

      The API changes are relatively small, but the implementation behind the new methods involves some amount of refactoring the existing implementation. The primary task is to change all existing uses of java.io.File into corresponding uses of javax.tools.FileObject. Much of this work has already been done in JDK 7, but the remaining work has had to be deferred because of a probably dependence on the new NIO API.

      Testing

      Unit (jtreg) tests will be provided to exercise the new functionality. There will not be any platform-specific requirements.

      Risks and Assumptions

      Generally speaking, javadoc is very old code, that has not had much TLC in a long time. There is a risk that the refactoring will not be as simple as expected.

      Dependences

      Up to now, there has been a probable dependence on the new NIO API, but that has now become available in JDK 7.

      Impact

      • JCP: maintenance review of JSR 199
      • Compatibility: minimal
      • Documentation: API docs only
      • Internationalization: minimal
      • Localization: minimal

            jjg Jonathan Gibbons
            jjg Jonathan Gibbons
            Jonathan Gibbons Jonathan Gibbons
            Brian Goetz
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: