Element <defaultCache> does not allow attribute

<?xml version="1.0" encoding="UTF-8" ?>
<ehcache>
    <!--磁盘缓存位置-->
    <diskStore path="java.io.tmpdir/ehcache"/>
    <!--默认缓存-->
    <defaultCache
        maxEntriesLocalHeap="10000"
        eternal="false"
        timeToIdleSeconds="120"
        timeToliveSeconds="120"
        maxEntriesLocalDisk="10000000"
        diskExpiryThreadIntervalSeconds="120"
        memoryStoreEvictionPolicy="LRU">
        <persistence strategy="localTempSwap"></persistence>
    </defaultCache>

    <cache name="HelloWorldCache"
           maxElementsInMemory="1000"
           eternal="false"
           timeToIdleSeconds="5"
           timeToliveSeconds="5"
           overflowToDisk="false"
           memoryStoreEvictionPlicy="LRU">
    </cache>

</ehcache>
public class MyEhcache {
    public static void main(String[] args) {
        //配置文件
        URL resource =MyEhcache.class.getClassLoader().getResource("cache.xml");
        //创建缓存管理对象CacheManager
        CacheManager cacheManager=new CacheManager(resource);

        Cache  cache=cacheManager.getCache("HelloWorldCache");


        //创建对象存储缓存数据
        Element element=new Element("str","wit");

        cache.put(element);


        //获取缓存数据
        Cache cache1=cacheManager.getCache("HelloWorldCache");
        Element element1 = cache1.get("str");
        String str= (String) element1.getObjectValue();
        System.out.println(str);


    }
}
 <dependencies>
        <!--配置Ehcache的依赖-->
        <dependency>
            <groupId>net.sf.ehcache</groupId>
            <artifactId>ehcache</artifactId>
            <version>2.7.2</version>
        </dependency>
    </dependencies>

仅仅写了个ehcache测试,报错如下

 

"C:\Program Files\Java\jdk1.8.0_131\bin\java.exe" "-javaagent:D:\IntelliJ IDEA Community Edition 2020.3.3\lib\idea_rt.jar=54646:D:\IntelliJ IDEA Community Edition 2020.3.3\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_131\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_131\jre\lib\rt.jar;D:\ideaWorkspace\A\target\classes;C:\Users\Administrator\.m2\repository\net\sf\ehcache\ehcache\2.7.2\ehcache-2.7.2.jar;C:\Users\Administrator\.m2\repository\org\slf4j\slf4j-api\1.6.6\slf4j-api-1.6.6.jar" each.MyEhcache
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" net.sf.ehcache.CacheException: Error configuring from file:/D:/ideaWorkspace/A/target/classes/cache.xml. Initial cause was Error configuring from input stream. Initial cause was null:13: Element <defaultCache> does not allow attribute "timeToliveSeconds".
	at net.sf.ehcache.config.ConfigurationFactory.parseConfiguration(ConfigurationFactory.java:105)
	at net.sf.ehcache.CacheManager.parseConfiguration(CacheManager.java:720)
	at net.sf.ehcache.CacheManager.init(CacheManager.java:384)
	at net.sf.ehcache.CacheManager.<init>(CacheManager.java:328)
	at each.MyEhcache.main(MyEhcache.java:14)
Caused by: net.sf.ehcache.CacheException: Error configuring from input stream. Initial cause was null:13: Element <defaultCache> does not allow attribute "timeToliveSeconds".
	at net.sf.ehcache.config.ConfigurationFactory.parseConfiguration(ConfigurationFactory.java:159)
	at net.sf.ehcache.config.ConfigurationFactory.parseConfiguration(ConfigurationFactory.java:103)
	... 4 more
Caused by: org.xml.sax.SAXException: null:13: Element <defaultCache> does not allow attribute "timeToliveSeconds".
	at net.sf.ehcache.config.BeanHandler.setAttribute(BeanHandler.java:282)
	at net.sf.ehcache.config.BeanHandler.startElement(BeanHandler.java:113)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.startElement(AbstractSAXParser.java:509)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1359)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2784)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:602)
	at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:505)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:841)
	at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:770)
	at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:141)
	at com.sun.org.apache.xerces.internal.parsers.AbstractSAXParser.parse(AbstractSAXParser.java:1213)
	at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl$JAXPSAXParser.parse(SAXParserImpl.java:643)
	at com.sun.org.apache.xerces.internal.jaxp.SAXParserImpl.parse(SAXParserImpl.java:327)
	at javax.xml.parsers.SAXParser.parse(SAXParser.java:195)
	at net.sf.ehcache.config.ConfigurationFactory.parseConfiguration(ConfigurationFactory.java:157)
	... 5 more

Process finished with exit code 1

 

是版本问题吗

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答

本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。

​​​​因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。