infinispan - 无法在 JBoss EAP 7.2 上使用 Infinispan 嵌入式缓存管理器
问题描述
我需要在 JBoss EAP 7.2 下的 Web 应用程序上使用缓存系统
我的目的是在应用程序级别配置缓存,因此不需要服务器配置。
缓存提供者是Infinispan
这是我的 pom.xml:
<dependency>
<groupId>org.infinispan</groupId>
<artifactId>infinispan-hibernate-cache-v53</artifactId>
<version>${version.infinispan}</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.infinispan</groupId>
<artifactId>infinispan-core</artifactId>
<version>${version.infinispan}</version>
<scope>provided</scope>
</dependency>
${version.infinispan} 是 9.3.3.Final,JBoss EAP 7.2 发布的版本(另见https://access.redhat.com/articles/112673)
当我尝试启动 AS 时,出现此错误:
[...] a class it references was not found: org.infinispan.manager.EmbeddedCacheManager
猜猜我必须在清单或其他东西上配置它,但是我还没有找到如何。
任何帮助,将不胜感激
编辑
在 RedHat 页面上报告了以下语句:
Infinispan is delivered as a private module in EAP to provide the caching capabilities of EAP. Infinispan is not supported for direct use by application
这是否意味着我不能直接使用 infinispan 缓存?
解决方案
如果您想为您自己的数据添加缓存到 EAP,您应该使用 JBoss Datagrid(下游)或 Infinispan(上游)模块,这样您就可以完全控制缓存层的版本和功能。请参阅此快速入门来做到这一点。
EAP 附带的版本是固定的,不包含所有 Infinispan 模块,因此我们建议不要直接使用它。
推荐阅读
- java - 使用服务作为“工厂”返回不同的 Bean 实现
- jenkins - qTest | Jenkinsfile 流水线集成
- android - 非英特尔 AVD 仿真器
- html - 在手机Bootstrap 4上查看时图像跳出div
- javascript - Angular 2将变量从一个组件传递到另一个组件
- node.js - 每次nodejs中的另一个请求失败时重试一个请求
- linux - 配置 SSL ACL 时 kafka 消费者无法连接到服务器:{test-topic=LEADER_NOT_AVAILABLE}
- sql - 如何在给定条件下获取连续行
- java - Eclipse - 无法从“https://services.gradle.org/distributions/gradle-2.1-bin.zip”安装 Gradle 发行版
- c++ - 示例 Web 服务器和字节序