Neo4j 3.0.1'i bir Java 8 uygulamasına yerleştirdim ancak SPI sorunları yaşadım. IntelliJ beklendiği gibi doğru sonuçlar üretir, ama en kısa sürede bir JAR dışlayıcı inşa olarak, çalıştırmak ve Neo4j yazma girişimi içinden RunningGömülü Neo4j SPI Sınıfı (lucene PostingsFormat) Hata
, aşağıdaki özel durum alıyorum: Orada
Caused by: org.neo4j.kernel.impl.store.UnderlyingStorageException: java.lang.IllegalArgumentException: An SPI class of type org.apache.lucene.codecs.PostingsFormat with name 'BlockTreeOrds' does not exist. You need to add the corresponding JAR file supporting this SPI to your classpath. The current classpath supports the following names: [Lucene50]
at org.neo4j.kernel.impl.transaction.command.LabelUpdateWork.apply(LabelUpdateWork.java:62)
at org.neo4j.kernel.impl.transaction.command.LabelUpdateWork.apply(LabelUpdateWork.java:33)
at org.neo4j.concurrent.WorkSync.doSynchronizedWork(WorkSync.java:121)
at org.neo4j.concurrent.WorkSync.apply(WorkSync.java:90)
at org.neo4j.kernel.impl.transaction.command.IndexBatchTransactionApplier.close(IndexBatchTransactionApplier.java:105)
at org.neo4j.kernel.impl.api.BatchTransactionApplierFacade.close(BatchTransactionApplierFacade.java:70)
at org.neo4j.kernel.impl.storageengine.impl.recordstorage.RecordStorageEngine.apply(RecordStorageEngine.java:336)
at org.neo4j.kernel.impl.api.TransactionRepresentationCommitProcess.applyToStore(TransactionRepresentationCommitProcess.java:78)
... 25 more
Neo4j ile başlayan bir istisna gibi görünmüyor, bu yüzden Maven inşasıyla bazı bağımlılıkların çözülmediğini düşünüyorum.
benim pom.xml
dosyasında aşağıdaki vardır:
<dependency>
<groupId>com.sparkjava</groupId>
<artifactId>spark-core</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j</artifactId>
<version>3.0.1</version>
<type>pom</type>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.7.21</version>
</dependency>
<dependency>
<groupId>org.apache.lucene</groupId>
<artifactId>lucene-codecs</artifactId>
<version>5.5.0</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-slf4j</artifactId>
<version>3.0.0-M02</version>
</dependency>
<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.6.2</version>
</dependency>
<dependency>
<groupId>com.github.jknack</groupId>
<artifactId>handlebars</artifactId>
<version>4.0.5</version>
</dependency>
<dependency>
<groupId>com.opencsv</groupId>
<artifactId>opencsv</artifactId>
<version>3.7</version>
</dependency>
<dependency>
<groupId>commons-codec</groupId>
<artifactId>commons-codec</artifactId>
<version>1.10</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-annotations</artifactId>
<version>${jackson.version}</version>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-core</artifactId>
<version>${jackson.version}</version>
</dependency>
Bu sorunu nasıl çözebilirim?
GÜNCELLEME:
sizin tarafınızdan çalıştırmak isterseniz ben yeniden oluşturulur gerçekten basit boş proje ile bu sorunu, kaynak burada bulunabilir ettik: https://github.com/SeanNieuwoudt/neo4j-spi
Maalesef, sorun hala var "lümen çekirdek" kavanoz ekleyerek – SeanNieuwoudt
var? –
Aynı şey, Maven ambalajıyla ilgili bir şey olduğunu düşünüyorum. Temiz bir demo projesi oluşturdum ve bir göz atmak istiyorsanız soruyu bir bağlantıyla güncelledim. Sorun kolayca tekrarlanabilir. – SeanNieuwoudt