首页 > 解决方案 > 无法在 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 缓存?

标签: infinispanjboss-eap-7java-ee-8

解决方案


如果您想为您自己的数据添加缓存到 EAP,您应该使用 JBoss Datagrid(下游)或 Infinispan(上游)模块,这样您就可以完全控制缓存层的版本和功能。请参阅此快速入门来做到这一点。

EAP 附带的版本是固定的,不包含所有 Infinispan 模块,因此我们建议不要直接使用它。


推荐阅读