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

JEP 313: Remove the Native-Header Generation Tool (javah)

    Details

    • Author:
      Jonathan Gibbons
    • JEP Type:
      Feature
    • Exposure:
      Open
    • Subcomponent:
    • Scope:
      JDK
    • Discussion:
      compiler dash dev at openjdk dot java dot net
    • Effort:
      XS
    • JEP Number:
      313

      Description

      Summary

      Remove the javah tool from the JDK.

      Motivation

      The tool has been superseded by superior functionality in javac, added in JDK 8 (JDK-7150368). This functionality provides the ability to write native header files at the time that Java source code is compiled, thereby eliminating the need for a separate tool.

      Focusing on the support provided by javac eliminates the need to upgrade javah to support recent new paradigms, such as API access via the Compiler API in javax.tools.*, or the new java.util.spi.ToolProvider SPI added in JDK 9.

      Description

      Implementing the removal will include removing the affected files from the Mercurial repositories, including documentation files, as well as supporting makefile changes.

      Testing

      Any testing will be limited to verifying the javah command is not present.

      Risks and Assumptions

      There are no engineering issues with excising javah from the JDK, because the tool is no longer used by JDK, or when building the JDK.

      Users have been warned of the pending removal since JDK 9, in which a warning is generated each time the javah tool is invoked.

      Dependences

      There are no direct JDK dependences on the javah tool. Externally, there are some derivatives of javah, such as the Ant javah task, but just as users of the javah command are recommended to use javac -h, so too are users of these dependences are recommended to use instead the corresponding support provided for javac.

        Issue Links

          Activity

          There are no comments yet on this issue.

            People

            • Assignee:
              jjg Jonathan Gibbons
              Reporter:
              jjg Jonathan Gibbons
              Owner:
              Jonathan Gibbons
              Reviewed By:
              Brian Goetz, Joe Darcy
              Endorsed By:
              Brian Goetz
            • Votes:
              0 Vote for this issue
              Watchers:
              4 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: