gpt4 book ai didi

java - JDK 11 模块中的不可变标准语法错误

转载 作者:行者123 更新时间:2023-12-04 03:53:10 25 4
gpt4 key购买 nike

我有一个项目正在尝试使用不可变标准:https://immutables.github.io/criteria.html

我将以下内容添加到我的 pom.xml 中:

 <dependency>
<groupId>org.immutables</groupId>
<artifactId>criteria-inmemory</artifactId>
<version>2.8.2</version>
</dependency>

一切似乎都很好。但是,我在导入和工作时遇到了一些问题。我对 Immutables.Value 没有任何问题,它工作正常。当我导入 Criteria 时,Eclipse 提示:

org.immutables.criteria.Criteria 类型不可访问

所以我尝试将模块添加到我的 module-info.java 中,如下所示:

requires org.immutables.criteria-common;

还试过:

requires org.immutables.criteria-inmemory;

我正在使用 Eclipse 建议来自动完成模块名称,因为我真的不知道模块名称应该是什么,但是,当我添加上面的内容时,Eclipse 说存在语法错误,其中的“-”需要声明。所以在这一点上我有点卡住了!如果有人有任何建议,我很乐意听取他们的意见!

谢谢!!

最佳答案

我能够找到不可变库的问题,并发布了以下问题:https://github.com/immutables/immutables/issues/1223

基本上,库在构建 jar 文件时在 pom.xml 中创建了一个无效的 Automatic-Module-Name 标记。我们设置的值包含无效的“-”。

感谢@Naman 为我指明了正确的方向!谢谢!

我仍然想知道是否可以覆盖 jar 文件模块名称。对于库的用户来说,在这种情况下以某种方式覆盖库 jar 文件模块名称似乎很有用。

关于java - JDK 11 模块中的不可变标准语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64138065/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com