2

这是一个令我困惑的问题。javah需要一个字节码编译类的类路径来生成它的头文件。

但是javac,据推测,它从源代码中构建了一个 AST,它也可能被使用javah。特别是因为本机方法很容易被发现。

那么,为什么javah需要字节码呢?

4

1 回答 1

5

只是因为他们是这样写的。我同意,它绝对可以写成在源代码上运行,但这不是他们所做的。

它的编写方式有点有趣的是,如果你有源代码(首先编译它)或者你没有源代码,你可以使用它;这意味着它的完成方式实际上灵活,而不是更少。

于 2011-12-17T19:29:14.023 回答