问题标签 [immutables-library]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 注释奇怪地从 Immutables 接口传递到实现
我正在使用 Immutables 为这个接口生成不可变的:
但是生成的类字段对我来说看起来很奇怪:
private final java.lang.@Size(max = 10) String name;
请参阅注释java.lang.
前缀的垃圾。@Size
有了它 - 验证无法按预期工作。
手动删除它 - 一切正常。这种行为的原因可能是什么?检查 2.5.4-2.5.6 版本
java - Immutables don't generate code with java 9 with modules
Using immutables-library works fine with java 9 until I add a module-info.java
to the project, Immutables*.java
will no longer be generated.
To the module-info I add 'requires value' as suggested by IntelliJ.
What am I missing, is it a immutables-library
issue or something else I need to set up in order for javac
to find the annotation processing.
I am using maven with the maven-compiler-plugin:3.7.0
configured for target/source = 9.
java - 使用不可变对象创建 TreeMultimap
我目前正在使用不可变对象来构造具体对象。我在尝试创建TreeMultiMap
.
错误:它期望在OrderKey
创建地图时进行比较,如何使用不可变对象设置比较器来创建TreeMultiMap
?
java - 不可变库将 @Nullable 添加到 equals() 方法
我有一个非常简单的类并使用 Immutables 库。自动生成的代码定义了 equals 方法,如下所示:
@Nullable 注释会导致以下 FindBugs 错误:
NP_METHOD_PARAMETER_TIGHTENS_ANNOTATION:方法收紧参数上的空值注释
方法应该始终实现它覆盖的方法的协定。因此,如果方法采用标记为@Nullable 的参数,则不应在子类中使用该参数为@Nonnull 的方法覆盖该方法。这样做违反了该方法应处理空参数的约定。
我正在使用 Immutables-value-2.5.6.jar
有没有人看到这个错误?
我通过添加以下内容暂时缓解了这个问题:
到不可变类。但我不认为这是一个长期的解决方案。一定还有其他我想念的东西。
android - 将 Proguard 应用于 Retrofit2 和 GSONAdapters 的致命错误
我正在尝试在我的应用程序上设置 proguard,但遇到以下错误:
我无法提出解决此问题的 proguard 配置。这就是我现在在 gson proguard 文件中的内容:
编辑:这是来自 build.gradle 的相关依赖项
java - 如何为不可变对象设置 APT,以便 Intellij Idea 识别生成的代码?
我正在考虑从 maven 迁移到 gradle,在这种情况下,gradle 本身似乎工作正常,但 Idea 无法识别 Immutables 生成的源代码。
我在 APT 上阅读了这篇博文,这就是我得到这个的原因。
有关更多代码,请参见bitbucket
让我感动的一件事是,根据我的尝试,生成的 java 要么最终出现在out
目录中,要么build
出现在类路径中,当然到目前为止,这些都不能解决问题。
我该如何解决这个问题,以便 Idea 可以看到生成类型的来源(这样它就不会全部以红色突出显示)?
java - 如何让 GitHub 的 Immutables 在 IntelliJ + Gradle 中工作
我使用 GitHub 的Immutables库进行 Android 开发,现在我也想在后端尝试一下。
在 Android 中,为了使用该库,我需要做的就是:
当我尝试将上述依赖项复制到build.gradle
我的 Java 项目中时,出现此错误:
我尝试provided
用compileOnly
and替换compile
,但是@Value.Immutable
没有生成带有注释的接口的实现。
我如何使它工作?
java - 为什么 package-info.java 中声明的 immuables 库样式不适用于 java 9 项目中的子包?
有关详细信息,请参阅https://github.com/originalrusyn/java9_immutables
因此,以下配置适用于 sourceCompatibility = 1.8
p.package-info.java
构建.gradle
pbBjava
为什么它会为 sourceCompatibility=1.9 生成 pbImmutableB.java 而不是 pbBBuilder.java?
mongodb - immutable mongo 一些必需的属性没有设置
我正在使用不可变对象与 MongoDB 进行交互。我在下面创建一个非常简单的示例:-
当我创建一个对象时
我得到一个例外,如下所示: -
我也尝试了以下方法,但它也不起作用。
我在这里做错了什么?
谢谢,
阿马尔
kotlin - 将 Kotlin 与生成的 Java 类集成
我们使用注解处理框架(Immutables)从接口生成 Java 类。
现在我必须从 kotlin 类访问这些生成的类。虽然在 Java 中这很好用,但 Kotlin 编译器却找不到它们。
这是maven配置:
Kotlin 版本是 1.2.10(但与 1.2.20 相同)。交换插件声明没有帮助。我该如何配置?