Gradle java 9+资源文件夹名称冲突

Gradle java 9+ conflict in resource folder name

我有一个使用 JavaFX 的库,它有资源文件夹 "fxml"。由 gradle 使用 java 9+ 作为 lib.jar 构建,我将其包含在我的其他项目中,该项目以相同的方式构建。

不幸的是有以下问题:

Error occurred during initialization of boot layer
java.lang.LayerInstantiationException: Package fxml in both module A (my current project I am trying to build) and module B (lib.jar)

FAILURE: Build failed with an exception.

* What went wrong:
Execution failed for task ':run'.
> Process 'command '/usr/lib/jvm/openjdk-12/bin/java'' finished with non-zero exit value 1

真是抱怨资源里的"fxml"文件夹,因为我重命名文件夹后,这个问题就没有了。

我想问一下如何使用gradle解决这个冲突,我找到了很多关于如何解决依赖关系的文章,但是none关于文件夹名称的文章。

资源文件夹和Java包本质上是一样的。问题在于,对于您的项目,您将额外的资源添加到 JDK 中已经存在的包中。那是被禁止的。

基本上重命名您的资源 folder/package 就大功告成了。