0

我正在尝试编写一些允许我清除缓存的Java,但是我使用CacheManager.getInstance()...错误的地方是否存在问题:

Exception in thread "main" java.lang.NoClassDefFoundError:
   org/apache/commons/logging/LogFactory

当我将 commons-logging-1.1.3.jar 添加到项目中时,错误是:

net.sf.ehcache.config.ConfigurationFactory parseConfiguration
    WARNING: No configuration found. Configuring ehcache from
    ehcache-failsafe.xml  found in the classpath:
    jar:file:/C:/Users/olawzi/Downloads/ehcache-1.2.3.jar!/ehcache-failsafe.xml
4

2 回答 2

3

您通过添加其依赖项 commons-logging 正确解决了第一个问题。

如前所述,第二个是警告而不是错误(但是,我认为这是一个非常严重的警告,因为使用的默认值很可能对您的应用程序不利)。这意味着您忘记将ehcache.xmlehcache 的配置文件添加到类路径中。添加该文件,消息将消失。

另请注意,您使用的ehcache版本(1.2.3)似乎很旧,它是2006年发布的。当前版本是2.7,可以在这里下载。基于 Maven 的项目的说明也在该页面上。

于 2013-08-14T12:55:55.443 回答
0

您应该使用 maven 或 gradle 来管理 jar 依赖项:它将带来所有 jar 的好版本:否则您的问题将很难解决

于 2013-08-14T14:27:43.343 回答