- neo4j community 3.5.14
- neo4j- java -драйвер 4.0.0
- java 1.8
Я пишу демо как api do c
public class Neo4JUtils {
private Driver driver;
public Neo4JUtils() {
// Properties prop = Config.getProp();
// String uri = prop.getProperty("spark.neo4j.bolt.url");
// String user = prop.getProperty("spark.neo4j.bolt.user");
// String passwd = prop.getProperty("spark.neo4j.bolt.password");
String uri = "bolt://node2:7687";
String user = "neo4j";
String passwd = "123456";
AuthToken auth = AuthTokens.basic(user, passwd);
driver = GraphDatabase.driver(uri, auth);
}
public void addNode(String name) {
try (Session session = driver.session()) {
session.writeTransaction(tx -> tx.run("MERGE (a:Node {name: $name})", parameters("name", name)));
}
}
public void getNode(String name) {
try (Session session = driver.session()) {
Result result = session.run("MATCH (n:Node) where n.name=$name RETURN n.name as name", parameters("name", name));
while (result.hasNext()) {
Record record = result.next();
System.out.println(record.get("name").asString());
}
}
}
public void close() {
driver.close();
}
public static void main(String[] args) {
Neo4JUtils neo = new Neo4JUtils();
neo.addNode("扎啊哈");
neo.getNode("扎啊哈");
neo.close();
}
}
Получить ошибку
Exception in thread "main" java.lang.NoSuchFieldError: NULL
at org.neo4j.driver.Values.<clinit>(Values.java:85)
at org.neo4j.driver.AuthTokens.basic(AuthTokens.java:72)
at org.neo4j.driver.AuthTokens.basic(AuthTokens.java:54)
at com.yizhisec.bigdata.utils.Neo4JUtils.<init>(Neo4JUtils.java:21)
at com.yizhisec.bigdata.utils.Neo4JUtils.main(Neo4JUtils.java:52)
И я обнаружил, что эта строка получит ошибку
Ошибка или отсутствие какой-либо библиотеки в pom? Потому что я использую ту же информацию neo4j для связи с python
клиентской работой.