I am trying to create a user defined procedure (plugin) that involve querying Neo4j 4.x Enterprise. I'm using Maven as suggested by Neo4j.
My pow.xml dependencies are:
<dependencies>
<dependency>
<groupId>org.neo4j.test</groupId>
<artifactId>neo4j-harness</artifactId>
<version>${neo4j.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.neo4j.driver</groupId>
<artifactId>neo4j-java-driver</artifactId>
<version>4.2.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.neo4j/neo4j-cypher -->
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-cypher</artifactId>
<version>4.2.7</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.neo4j/neo4j-graphdb-api -->
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-graphdb-api</artifactId>
<version>4.2.7</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.12</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-bolt</artifactId>
<version>4.2.6</version>
</dependency>
<!-- https://jar-download.com/maven-repository-class-search.php?search_box=org.neo4j.dbms.api.DatabaseManagementServiceBuilder;-->
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j</artifactId>
<version>4.2.7</version>
</dependency>
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-procedure-api</artifactId>
<version>4.2.7</version>
</dependency>
</dependencies>
This java file gives me errors at the step where it tries to instantiate the data management service, e.g.: DatabaseManagementService managementService = new DatabaseManagementServiceBuilder( databaseDirectory ).build(). I have not yet added the query/result code.
package org.neo4j.neo4j_genealogy;
import java.io.IOException;
import java.nio.file.Path;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import org.neo4j.dbms.api.DatabaseManagementService;
import org.neo4j.dbms.api.DatabaseManagementServiceBuilder;
import org.neo4j.graphdb.GraphDatabaseService;
import org.neo4j.graphdb.Node;
import org.neo4j.graphdb.Result;
import org.neo4j.graphdb.Transaction;
import org.neo4j.io.fs.FileUtils;
import static org.neo4j.configuration.GraphDatabaseSettings.DEFAULT_DATABASE_NAME;
public class personQuery {
public static void getPerson(int RN) {
DatabaseManagementService managementService = new DatabaseManagementServiceBuilder( databaseDirectory ).build();
GraphDatabaseService db = managementService.database( DEFAULT_DATABASE_NAME );
}
public static void main(String args[]) {
getPerson(1);
}
}
Somehow, the required dependency is not loading properly.
How do I fix this?