2017-09-09 23 views
0

最近、OpenJDK1.8のソースコードを読んでいて、ソースコードについて質問がありました。以下のような質問。誰でも助けることができますか?Openjdk1.8のソースコードにjava.nio.ByteBufferが存在しないのはなぜですか?

のByteBufferクラスは、Oracle Java1.8パッケージjava.nioのの下に存在しますが、私はthe same package of OpenJDK1.8には、このようなクラスが存在しないました。 OpenJDK1.8のソースコードをhereからダウンロードしました。

+0

http://grepcode.com/file/repository.grepcode.com/java/root/jdk/8u40-b25/java/nio/ByteBuffer.java#ByteBuffer –

+1

については、いくつかのコード生成が使用中:http://hg.openjdk.java.net/jdk8u/jdk8u60/jdk/file/935758609767/src/share/classes/java/nio/ByteBufferAs-X-Buffer.java.template – erickson

+0

@JimGarrisonありがとう。それが私が探しているものです。 –

答えて

4

接尾辞.templateのソースファイルは、ビルド時にクラスを生成するためにJDKビルドで処理されます。たとえば、ByteBuffer(すべてのIntBuffer、LongBufferなど)は、X-Buffer.java.templateから生成されます。独自のビルドをお持ちの場合は、出力ディレクトリのgensrcツリーを参照して、生成されたクラスを確認してください。

+0

ありがとう! –