Spring 9中的Java 9拆分包错误

Chr*_*sen 9 java spring spring-boot java-9 java-module

当我在SpringBoot代码中引入java 9模块时,我得到了大量的"拆分包"错误.它们无处不在,例如:

Error:java: the unnamed module reads package org.bson.types from both bson and mongodb.driver
Error:java: the unnamed module reads package org.bson.io from both bson and mongodb.driver
Error:java: the unnamed module reads package org.bson from both bson and mongodb.driver
Error:java: the unnamed module reads package com.mongodb.client.model from both mongodb.driver.core and mongodb.driver
Error:java: the unnamed module reads package com.mongodb.client from both mongodb.driver.core and mongodb.driver
Error:java: the unnamed module reads package com.mongodb from both mongodb.driver.core and mongodb.driver
Error:java: the unnamed module reads package org.aopalliance.aop from both aopalliance.repackaged and spring.aop
...
Run Code Online (Sandbox Code Playgroud)

我曾尝试,有很多不同的版本,其中包括1.5.3.RELEASE,2.0.0.M52.0.0.BUILD-SNAPSHOT.

当maven接受所有依赖项并将它们添加为模块路径上的"自动模块"时,似乎会出现问题.许多依赖项具有重复的包,这在java 9中是不允许的.坏依赖的示例spring.aop:5.0.1.BUILD-SNAPSHOT显然是包org.aopalliance.aop.

SpringBoot定义了所有依赖项.我甚至尝试使用spring initializr中的vanilla项目,仅添加:

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-mongodb</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-jersey</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
        <scope>test</scope>
    </dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)

此外,我添加了一个module-info.java来使演示代码符合java 9:

??? src
?   ??? main
?   ?   ??? java
?   ?   ?   ??? com
?   ?   ?   ?   ??? example
?   ?   ?   ?       ??? demo
?   ?   ?   ?           ??? DemoApplication.java
?   ?   ?   ??? module-info.java
?
Run Code Online (Sandbox Code Playgroud)

这不编译.

问题: 有没有人有一个SpringBoot项目的工作示例,其中代码是在java 9模块中组织的?