HTTP/2 301
server: AkamaiGHost
content-length: 0
location: https://openjdk.org/jeps/106
date: Tue, 29 Jul 2025 02:58:02 GMT
HTTP/2 200
content-type: text/html
last-modified: Thu, 05 Jun 2025 17:23:11 GMT
vary: Accept-Encoding
etag: "6841d27f-2e99"
content-security-policy-report-only: default-src 'self' *.openjdk.java.net feedburner.google.com; style-src 'self' 'unsafe-inline'; script-src 'self' 'unsafe-inline' 'unsafe-eval' feeds.feedburner.com *.statcounter.com statcounter.com; img-src 'self' data: *.statcounter.com *.openjdk.java.net feedburner.google.com; frame-ancestors 'none'; report-uri https://openjdk.report-uri.io/r/default/csp/reportOnly
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
x-content-type-options: nosniff
accept-ranges: bytes
x-akamai-transformed: 0 - 0 -
content-encoding: gzip
date: Tue, 29 Jul 2025 02:58:02 GMT
content-length: 3517
set-cookie: _abck=5EE5367BE50444E54596067895486C68~-1~YAAQNAHARX9rKT2YAQAAZZodVA6Tz4gOdV04dXqRLqSMiiasWWqAkUrltWwxkIoHiRyvQzeb6mYORxNJkMcka/VCc2+9VhfQoGPw4IiCox123QuHCB9KFFuHcB0yFniVUX4DLnpuZ6xqcKDEsBval8b/V4I4NGHDMBbZvuzqhP9HWLjY1mWtUL7izdnmCU9/V1WKz4eJ8SmDrUJrfmnz7MG8oakugLMhb3kNddKfFLv3DMR1MeiiouBI0Rt7nX5zlCx7BquAn2NZwYz4vsWL6puwM5uXFUB/kOA8dVjoVsrjWsMMokV/8+kDDzR89FYMtxLCNbXN6kcXAcgeE2rwPavc2Q1GH6/3IcWl3McAphX2erDSm0acDeVY7hOAiQCkP0D4HLGXu1CU2b0CeMroCU7TFsgr5Gh8Xq2RzCCZCvx3qFvt8D/U7mZ4yKsOlUXLvCVPwO0=~-1~-1~-1; Domain=.openjdk.org; Path=/; Expires=Wed, 29 Jul 2026 02:58:02 GMT; Max-Age=31536000; Secure
set-cookie: bm_sz=D070F2B316654A9AAB2A992E26F3DD19~YAAQNAHARYBrKT2YAQAAZZodVBxFMmLjXuKcsYu4OF6Usya2rKYeTPuhqHVAu+oxHg9GxPwVmE4hZGE4HdVhY/39KQoksxCNwvIIhSdgX/O+mSOoPJ/Y3wgsDfFaF0O2CtcGoSI88O0CwI4I8T9CZYk8yymI3ge+mzP/yKCPhHP0nkFoxn24T/493QAs51zC9d5ONohm9CC3REuFzzneyioI+lfekA6DW/QyuoJBKfh88KyEljCdizSqA42ea+WiOO/BubQobfo/S+4EZNk5+l5y56xmgUsD9v6sMZi4LjqU2TUnPFEjZzhtQWedI7N5XhAFGJsOMzPdOjnHkejlFN+HWJvNuwijVMIBRIqFZHvyc9INnGhAL5g=~3553587~3158325; Domain=.openjdk.org; Path=/; Expires=Tue, 29 Jul 2025 06:58:02 GMT; Max-Age=14400
JEP 106: Add Javadoc to javax.tools
Owner | Jonathan Gibbons |
Type | Feature |
Scope | SE |
Status | Closed / Delivered |
Release | 8 |
Component | tools / javadoc(tool) |
JSR | 199 MR |
Discussion | compiler dash dev at openjdk dot java dot net |
Effort | S |
Duration | S |
Endorsed by | Brian Goetz |
Created | 2011/07/21 20:00 |
Updated | 2015/02/13 19:41 |
Issue | 8046096 |
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