有没有办法让Java 9停止抱怨无法访问的软件包?

Jes*_*num 1 java-platform-module-system java-9

我正在切换到Java 9(用于HTTP/2客户端,以及其他好处),但不打算使用Java 9模块化.

关于无法访问的软件包,我遇到了大量的编译器错误.每个都要求我添加一个额外的--add-exports modulename/packagename=ALL-UNNAMED编译器标志.

是否有一些编译器标志,我可以指定,一次,添加所有导出,而不是再得到编译器错误?

以下是显示问题的示例代码:

package com.prosc.fx;

import com.sun.javafx.stage.WindowHelper;

public class CompilerFlagTest {
    public static void main(String[] args) {
        WindowHelper.getWindowAccessor();
    }
}
Run Code Online (Sandbox Code Playgroud)

错误消息是:

错误:(3,22)java:package com.sun.javafx.stage不可见(包com.sun.javafx.stage在模块javafx.graphics中声明,它不会将其导出到未命名的模块)

Oli*_*ire 5

您提到的类和包是在私有包中,梯形图中的新可见性级别.这意味着您可能无法访问它们,因为整个模块化是强制性的,而不是可选的.即使您不使用模块化,也可以使用它.

所以请帮自己一个忙,并使用公共API.