在 Clojure 中访问 infinispan .class
access infinispan .class in Clojure
我正在尝试在 Clojure 中复制 the Infinispan documentation 的一段代码:
ConfigurationBuilder b = new ConfigurationBuilder();
b.persistence()
.addStore(SoftIndexFileStoreConfigurationBuilder.class)
.indexLocation("/tmp/sifs/testCache/index");
.dataLocation("/tmp/sifs/testCache/data")
这是我的尝试:
(import '[org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder])
(import '[org.infinispan.configuration.cache ConfigurationBuilder])
(def b (ConfigurationBuilder.))
(.addStore (.persistence b)
(class org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder))
;; java.lang.ClassNotFoundException: org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder
如何克服这个异常?这是 SIFS source
对于你的情况,你的依赖项中应该有:
:dependencies ... others here ...
[org.infinispan/infinispan-core "9.0.1.Final"]
[org.infinispan/infinispan-persistence-soft-index "9.0.1.Final"]
此外,您使用的 import 不正确。您可以这样做:
(import full.package.name.ClassNameHere)
或
(import [full.package.name ClassNameOne ClassNameTwo])
对于你的情况,你应该这样做:
(import org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder)
请注意,与 require
不同,其中 nil
结果表示 "everything's good," 而 import
nil
return 表示 "nothing was imported."
我正在尝试在 Clojure 中复制 the Infinispan documentation 的一段代码:
ConfigurationBuilder b = new ConfigurationBuilder();
b.persistence()
.addStore(SoftIndexFileStoreConfigurationBuilder.class)
.indexLocation("/tmp/sifs/testCache/index");
.dataLocation("/tmp/sifs/testCache/data")
这是我的尝试:
(import '[org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder])
(import '[org.infinispan.configuration.cache ConfigurationBuilder])
(def b (ConfigurationBuilder.))
(.addStore (.persistence b)
(class org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder))
;; java.lang.ClassNotFoundException: org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder
如何克服这个异常?这是 SIFS source
对于你的情况,你的依赖项中应该有:
:dependencies ... others here ...
[org.infinispan/infinispan-core "9.0.1.Final"]
[org.infinispan/infinispan-persistence-soft-index "9.0.1.Final"]
此外,您使用的 import 不正确。您可以这样做:
(import full.package.name.ClassNameHere)
或
(import [full.package.name ClassNameOne ClassNameTwo])
对于你的情况,你应该这样做:
(import org.infinispan.persistence.sifs.configuration.SoftIndexFileStoreConfigurationBuilder)
请注意,与 require
不同,其中 nil
结果表示 "everything's good," 而 import
nil
return 表示 "nothing was imported."