如何从Java 9模块导出所有包?

现在,对于我拥有的每个模块,我都需要明确指定要导出的包。 例如:

module core { exports cc.blynk.server.core; exports cc.blynk.server.core.protocol.handlers.decoders; exports cc.blynk.server.core.protocol.handlers.encoders; } 

但是,它不是很方便。 我想做那样的事情:

 module core { exports cc.blynk.server.core.*; } 

有没有办法做到这一点? 这种限制来自哪里?

用法

 module core { exports cc.blynk.server.core.*; } 

不鼓励,因为这可能主要导致从不同模块导出的不同包中的冲突,这违反了模块化代码的目的。


另外引用其中一个主题:

模块导出的包旨在成为消费者可以依赖的稳定API。 出于这个原因, 我们让模块作者明确地拼出导出的包 。 这也减少了多个模块不必要地导出相同包的可能性。 此外,它还避免了在com.abs.foo导出且具有限定条件时,如果com.abs.*在没有限定com.abs.foo下导出时会发生的混淆。