问题标签 [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.
constructor - 是否可以为 Immutables 构建器生成公共默认构造函数以及静态工厂方法?
我正在尝试为具有公共默认构造函数和静态工厂方法的Immutables值定义构建器,即
new CustomerBuilder().name("Joe").age(21).build()
和
CustomerBuilder.builder().name("Joe").age(21).build()
我希望默认构造函数可用,因为我正在使用带有 DynamoDbEnhanced 客户端的构建器,它期望构建器的公共默认构造函数可用。我更喜欢初始化构建器的静态工厂方式,这就是我希望静态工厂样式也可用的原因。
我可以设置样式中的属性组合来完成此操作吗?这是可用于定义不可变样式的可能注释的参考。
android - 如何在 Android 中启用对不可变对象的增量注释处理器支持
我想知道在 Android 中为不可变库启用增量注释处理的正确程序是什么。该项目混合了 Java/Kotlin 代码并kapt
用于注释处理。在关于这个线程的讨论之后,我在我的模块级build.gradle
文件中尝试这个代码:
但是当我构建我的项目时,我收到以下警告:
我错过了什么吗?
java - 不可变的有效注释未运行
我正在尝试使用不可变库https://immutables.github.io/ 并使用 javax.validation 验证字段,但是在生成类时注释会被忽略。即使在单元测试中,它也不会引发任何错误。
我的 pom.xml,我尝试添加spring-boot-starter-validation和javax.validation但它只是不会触发验证
java - Javax 验证不会传递到不可变生成的类
我正在使用 immutables.org 库并希望添加 Javax 注释验证。但我注意到验证没有被带到生成的类。我认为 immutables.org 与验证注释兼容。我有spring-boot-starter-validation和javax.validation依赖项。
不可变
控制器:
pom.xml
java - Spring Boot 不可变验证仅适用于 get 前缀
我正在尝试在不可变对象上实现 Javax 验证,但我只能通过使用前缀“get”重命名每个变量来使其工作。没有那个“get”就可以让它工作吗?
我的控制器:
maven - 自定义注释处理器的 Maven 编译器插件问题
我已经编写了一个自定义注释处理器并配置了 maven 编译器插件,如下所示,我面临着我的应用程序类路径中的Immutables注释处理器的问题。当我通过 Maven 编译器插件添加我的注释处理器时,Immutables 给出了编译错误。我的项目中也需要不可变对象。
使用不可变/任何注释处理器以及我的自定义注释处理器的任何提示。
java - 我可以为 Spring Beans 使用 Immutables 库的 Modifiable 吗?
我正在使用 Spring Boot Java API。我们有一系列 HandlerInterceptorAdapter 类,我们的 API 调用在它们到达控制器之前会经过这些类。我们有一个数据对象,它在通过这些拦截器时设置了它的字段。该代码由许多团队拥有,因此对该架构进行根本更改并不是一个真正的选择,至少在这个问题的范围内。
我们目前将此对象作为 Lombok 构建器传递,并在需要读取字段时沿途调用 build()。这对我来说感觉不太好,总的来说,我们正在尝试将这个项目从 Lombok 移开并使用 Immutables 库。
阅读 Modifiable 的文档,似乎这就是我想要使用的。我已经尝试创建一个作为 Modifiable 对象的 bean,但是 Spring CGLIB 类的某些内容使 setter 方法无法连接到 Modifiable 对象本身。它看起来运行正常,但实际上没有设置任何字段。
FWIW,我还必须配置 Modifiable 类@Value.Style(create = "new")
以防止它成为final
.
我也尝试过对一个Immutable.Builder
没有运气的班级做同样的事情。
是否可以以Modifiable
这种方式使用库?从概念上讲,它似乎非常适合这个用例。
java - org.keycloak:keycloak-spring-boot-starter 依赖与 org.immutables 不兼容并导致 'application/json;charset=UTF-8' 不支持
导入依赖后抛出异常org.keycloak:keycloak-spring-boot-starter
。没有对代码进行其他更改。
例外:
DTO
经过一些调试,很明显只有当构建器具有多个相同属性的方法时才会发生这种情况List<String>
。
如果只有一种方法,一切都会按预期工作。使用带有 getter 和 setter 的“简单”DTO 类也可以。
不幸的是,身份验证是在最新阶段添加的,并且需要大量返工才能更改当前代码。有没有办法解决这个问题并使两个依赖项相互兼容?