哪些步骤会重现该问题?
预期的结果是什么?
安装的JDK应该是可选择的
会发生什么?
包含 JDK 的文件夹未显示在浏览器中(图片 #3) 我需要切换回 JDK 8,目前我只能使用 JDK11 中内置的 IDE(无法选择通过 SDKMAN 安装的 11 或 8 JDK 版本)
环境
操作系统:Linux Mint IntelliJ IDEA 2019.3(社区版)Build #IC-193.5233.102,构建于2019年11月28日
可以在 Jetbrains 问题跟踪器中找到屏幕截图和日志:https : //youtrack.jetbrains.com/issue/IDEA-228394
我正在遵循MapStruct 博客上的指南,但在同时使用这 3 种技术时遇到问题。我一直在尝试来自 MapStruct 文档、错误报告、此处帖子的几种方法,但在每种情况下,我最终都会在构建过程中收到以下异常。
有人在 Quarkus 下成功使用 MapStruct 和 Lombok 吗?任何帮助表示赞赏。
compile奇怪的是, a 后的第一个mvn clean总是成功,而第二个compile或运行应用程序会抛出此错误:
Error:(9,8) java: Internal error in the mapping processor: java.lang.RuntimeException:
javax.annotation.processing.FilerException: Attempt to recreate a file for type com.example.service.RawContentDtoMapperImpl
at org.mapstruct.ap.internal.processor.MapperRenderingProcessor.createSourceFile(MapperRenderingProcessor.java:59)
at org.mapstruct.ap.internal.processor.MapperRenderingProcessor.writeToSourceFile(MapperRenderingProcessor.java:39)
...
Run Code Online (Sandbox Code Playgroud)
映射器配置:
Error:(9,8) java: Internal error in the mapping processor: java.lang.RuntimeException:
javax.annotation.processing.FilerException: Attempt to recreate a file for type com.example.service.RawContentDtoMapperImpl
at org.mapstruct.ap.internal.processor.MapperRenderingProcessor.createSourceFile(MapperRenderingProcessor.java:59)
at org.mapstruct.ap.internal.processor.MapperRenderingProcessor.writeToSourceFile(MapperRenderingProcessor.java:39)
...
Run Code Online (Sandbox Code Playgroud)
映射器:
@MapperConfig(componentModel = "cdi")
public interface QuarkusMappingConfig { …Run Code Online (Sandbox Code Playgroud) 更新!
在解决了一些与主要问题无关的问题后,我修复了示例代码中的小错误,主要问题仍然是关于服务之间的非阻塞流。
背景资料:
我正在 Quarkus 下移植 Spring WebFlux 服务。该服务对多个庞大数据集运行长时间搜索,并在可用时以 Flux(文本/事件流)形式返回部分结果。
问题:
现在,我尝试在 Quarkus 下将 Mutiny Multi 与 Vert.x 结合使用,但无法弄清楚消费者服务如何在不阻塞的情况下接收此流。
在所有示例中,消费者要么是 JS 前端页面,要么生产者的内容类型是 application/json,在将其发送到一个 JSON 对象之前,它似乎会一直阻塞,直到 Multi 完成(这在我的应用程序中没有任何意义)。
问题:
这是一个简化的例子
测试实体
public class SearchResult implements Serializable {
private String content;
public SearchResult(String content) {
this.content = content;
}
//.. toString, getters and setters
}
Run Code Online (Sandbox Code Playgroud)
生产者 1. 简单的无限流 -> 挂起
@GET
@Path("/search")
@Produces(MediaType.SERVER_SENT_EVENTS)
@SseElementType(MediaType.APPLICATION_JSON)
public Multi<SearchResult> getResults() { …Run Code Online (Sandbox Code Playgroud)