0

使用当前 JDKbuild 9-ea+143javax.tools.JavaCompiler工具,我可以编译简单(空)示例模块而不会出现错误:

module com.foo.bar { }

如果我添加open如下:

open module com.foo.bar { }

...编译器错误显示:

/module-info.java:1: error: class, interface, or enum expected
open module com.foo.bar {
^

语法基于http://cr.openjdk.java.net/~mr/jigsaw/spec/lang-vm.html

当前的 JDK 9 版本是否与此规范不是最新的,还是我缺少要传递给的选项JavaCompiler

4

1 回答 1

1

要获得最新的 Jigsaw 功能,您需要使用Jigsaw EA 构建(与常规 EA 构建相反)。我创建了一个GitHub 存储库,探索开放的包和模块(以使反射工作)并且还写了关于它- 它绝对适用于 b146。

于 2016-11-09T06:42:09.197 回答