繁体   English   中英

gwt-user.jar 和 Java 11 - package javax.xml.parsers 可以从多个模块访问:<unnamed> , java.xml</unnamed>

[英]gwt-user.jar with Java 11 - The package javax.xml.parsers is accessible from more than one module: <unnamed>, java.xml

我正在尝试切换到 GWT 2.10 和 Java 11(使用 Eclipse 容器作为 GWT 和 gradle 作为依赖项),但是因为一些 java 包被捆绑在 gwt-user:892 中

The package javax.xml.parsers is accessible from more than one module: <unnamed>, java.xml

搜索 web,我找到的解决方案是通过删除包重新打包 gwt-user.jar 或将我的项目变成一个模块(我没有看到它被推荐并且我也不知道有什么影响/链反应了)。 这些选项似乎都不好。

有没有其他方法可以解决这个问题?

最后,我通过从 com.google.gwt 包中获取依赖项解决了我的问题。 但是我在这里遇到了很多问题,因为我使用的是 gwt 材料,当时它也得到了“大罐子”的依赖。 所以我的 gradle 现在看起来像这样:

//for Eclipse with GWT plugin (which creates the gwt classpath container):
classpath {
    ...
    containers GWT_CONTAINER //from my gradle properties - com.gwtplugins.gwt.eclipse.core.GWT_CONTAINER/gwt-2.10.0
}

def gmdVersion = '2.6.0' //library GWT Material
def gwtVersion = GWT_VERSION//from my gradle properties file - 2.10.0
def gwtNamespace = 'com.google.gwt' //org.gwtproject in the future i think

api (group: "${gwtNamespace}", name: 'gwt-dev', version: GWT_VERSION)
api (group: "${gwtNamespace}", name: 'gwt-user', version: GWT_VERSION) 

api (group: 'com.github.gwtmaterialdesign', name: 'gwt-material', version: "${gmdVersion}") {
        exclude group:"${gwtNamespace}", module: "gwt-user"
        exclude group:"${gwtNamespace}", module: "gwt-dev"
        ...
    }

api (group: 'com.github.gwtmaterialdesign', name: 'gwt-material-jquery', version: "${gmdVersion}") {
        exclude group:"${gwtNamespace}", module: "gwt-user"
        exclude group:"${gwtNamespace}", module: "gwt-dev"
        ...
    }
api (group: 'com.github.gwtmaterialdesign', name: 'gwt-material-addins', version: "${gmdVersion}") {
        exclude group:"${gwtNamespace}", module: "gwt-user"
        exclude group:"${gwtNamespace}", module: "gwt-dev"
        ...
    }

根据每个人的项目结构,其他一些依赖也可能导致类似的问题,所以如果一开始这不起作用,您需要检查从多个依赖 jars 导入了哪些其他类。或者,您可以尝试创建一个新项目,您可以在其中模拟仅针对 GWT 相关类的错误(只是一个简单的新空项目,您可以在其中配置基本依赖项),然后尝试此解决方案,它应该可以工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM