创建要在neo4j服务器上运行的maven项目时出错
如何解决此异常: 线程“main”中出现异常 org.neo4j.kernel.lifecycle.LifecycleException:转换失败 成分 'org.neo4j.kernel.impl.pagecache。PageCacheLifecycle@4b845428“从 停止以关闭。请参阅附件中的原因例外 org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.shutdown(LifeSupport.java:559) 在 org.neo4j.kernel.lifecycle.LifeSupport.shutdown(LifeSupport.java:200) 在 org.neo4j.kernel.InternalAbstractGraphDatabase.shutdown(InternalAbstractGraphDatabase.java:685) 在 org.neo4j.kernel.InternalAbstractGraphDatabase.run(InternalAbstractGraphDatabase.java:340) 在 EmbeddedGraphDatabase。(EmbeddedGraphDatabase.java:59) 在 org.neo4j.graphdb.factory.GraphDatabaseFactory.newDatabase(GraphDatabaseFactory.java:108) 在 org.neo4j.graphdb.factory.GraphDatabaseFactory$1.newDatabase(GraphDatabaseFactory.java:95) 在 org.neo4j.graphdb.factory.GraphDatabaseBuilder.newGraphDatabase(GraphDatabaseBuilder.java:176) 在 org.neo4j.graphdb.factory.GraphDatabaseFactory.newEmbeddedDatabase(GraphDatabaseFactory.java:67) 在neo4jExamples.secondExample.main(secondExample.java:18)中,由以下原因引起: java.lang.IllegalStateException:在运行时无法关闭页面缓存 仍然映射文件:neostore.relationshiptypestore.db.names(1 映射)在 org.neo4j.io.pagecache.impl.muninn.MuninnPageCache.close(MuninnPageCache.java:473) 在 org.neo4j.kernel.impl.pagecache.PageCacheLifecycle.shutdown(PageCacheLifecycle.java:42) 在 org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.shutdown(LifeSupport.java:555) ... 9更多 我的代码是:创建要在neo4j服务器上运行的maven项目时出错,neo4j,Neo4j,如何解决此异常: 线程“main”中出现异常 org.neo4j.kernel.lifecycle.LifecycleException:转换失败 成分 'org.neo4j.kernel.impl.pagecache。PageCacheLifecycle@4b845428“从 停止以关闭。请参阅附件中的原因例外 org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.shutdown(LifeSupport.java:559) 在 or
package neo4jExamples;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Relationship;
import org.neo4j.graphdb.Transaction;
import org.neo4j.graphdb.factory.GraphDatabaseFactory;
public class secondExample {
public static void main(String[] args) {
GraphDatabaseService graphDb;
Node firstNode;
Node secondNode;
Relationship relationship;
graphDb = new GraphDatabaseFactory().newEmbeddedDatabase("/var/lib/neo4j/data/graph.db");
registerShutdownHook( graphDb );
try (Transaction tx = graphDb.beginTx()) {
firstNode = graphDb.createNode();
firstNode.setProperty( "message", "Hello, " );
secondNode = graphDb.createNode();
secondNode.setProperty( "message", "World!" );
relationship = firstNode.createRelationshipTo( secondNode, RelTypes.KNOWS );
relationship.setProperty( "message", "brave Neo4j " );
System.out.print( firstNode.getProperty( "message" ) );
System.out.print( relationship.getProperty( "message" ) );
System.out.print( secondNode.getProperty( "message" ) );
tx.success();
}
}
private static void registerShutdownHook(final GraphDatabaseService graphDb) {
Runtime.getRuntime().addShutdownHook(new Thread() {
@Override
public void run() {
graphDb.shutdown();
}
});
}
}
我可以想到两个原因:
graph.db
文件夹中的文件权限