Java Maven可以生成模块声明吗

Java Maven可以生成模块声明吗,java,maven,java-9,Java,Maven,Java 9,除其他外,定义模块的依赖项。如果我使用Maven作为构建工具,这是多余的,因为pom.xml已经包含了这些(以及更多)信息。基于此,Maven能不能为我生成模块info.java?有人可能会认为大多数依赖项实际上也是必需的模块。但是,需求也可以指向JDK/JRE的模块,这些模块在pom.xml中没有指定。是的,如果您只看依赖项,可能大多数依赖项都可以转换为所需的模块引用 但是模块描述符包含更多的信息,这些信息都是基于开发人员做出的决策。 我已经详细描述了为什么不可能完全生成这个文件。我认为它不可

除其他外,定义模块的依赖项。如果我使用Maven作为构建工具,这是多余的,因为
pom.xml
已经包含了这些(以及更多)信息。基于此,Maven能不能为我生成
模块info.java

有人可能会认为大多数依赖项实际上也是必需的模块。但是,需求也可以指向JDK/JRE的模块,这些模块在
pom.xml
中没有指定。是的,如果您只看依赖项,可能大多数依赖项都可以转换为所需的模块引用

但是模块描述符包含更多的信息,这些信息都是基于开发人员做出的决策。
我已经详细描述了为什么不可能完全生成这个文件。

我认为它不可能,原因很简单:在一个依赖项中,我已经可以有多个Java模块(它们本身不是依赖项),那么Maven怎么可能有这样的信息呢?模块声明不是多余的…pom文件中的“导出…”的等价物是什么?此外,
需要java.sql
Maven应该如何知道这一点?模块名呢?根据什么来猜测呢?人工制品?不起作用…我建议阅读关于Jigsaw关键字的Maven DEV列表…除此之外,关于可传递依赖项呢?但它可能会生成某种默认或最小模块声明。所有需要的附加信息(开发人员做出的决策)都可以通过pom(插件中的配置)提供。有了这个,pom仍然是唯一需要维护的配置文件?!还有生成bnd文件、清单文件或web.xml文件的插件,这些文件包含pom提供的信息。事实上,
jdeps
(In
jdk-9/bin
)可以基于编译后的代码生成初始描述符。但它不能成为生命周期的一部分,因为它必须手动调整。