有neo4j java-rest-binding API的问题
git clone https://github.com/neo4j/java-rest-binding
mvn clean package
然后得到了我的JAR。
试过这个:
import org.neo4j.rest.graphdb.RestAPI;
import org.neo4j.rest.graphdb.RestAPIFacade;
import org.neo4j.rest.graphdb.entity.RestNode;
import org.neo4j.rest.graphdb.query.RestCypherQueryEngine;
import org.neo4j.rest.graphdb.util.QueryResult;
import static org.neo4j.helpers.collection.MapUtil.map;
import java.util.Map;
public class Connect {
public static void main(String[] args) {
System.out.println("starting test");
RestAPI api = new RestAPIFacade("http://localhost:7474/");
System.out.println("API created");
final RestCypherQueryEngine engine = new RestCypherQueryEngine(api);
System.out.println("engine created");
QueryResult<Map<String,Object>> result = engine.query("start n=node({id}) return n", map("id",1));
System.out.println("query created");
System.out.println(result);
for (Map<String, Object> row : result) {
Object tagline = row.get("tagline");
long id=((Number)row.get("id")).longValue();
System.out.println("id is " + id);
System.out.println(row.get("myRow"));
}
}
}
添加了neo4j rest和嵌入式库,并收到此错误消息。 (顺便说一下,我已经检查过,有一个节点1,服务器在本地运行)
开始测试
Exception in thread "main" java.lang.NoClassDefFoundError: javax/ws/rs/core/Response$StatusType
at org.neo4j.rest.graphdb.RestAPIFacade.<init>(RestAPIFacade.java:294)
at Connect.main(Connect.java:20)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:120)
Caused by: java.lang.ClassNotFoundException: javax.ws.rs.core.Response$StatusType
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 7 more
有什么想法吗?
答案 0 :(得分:1)
你可能会有一堆罐子作为依赖项包含在内。 将其余的绑定作为maven依赖包括在内当然会处理它:
org.neo4j
Neo4j的休息,graphdb
1.8.1
如果你是从源代码构建的,那么我通常会查看pom.xml https://github.com/neo4j/java-rest-binding/blob/master/pom.xml并从/ target / dependencies中选择依赖项
这是不科学的。答案 1 :(得分:1)
您可以在src build
中使用mvn dependency:copy-dependencies
将所有依赖项放入
ls target/dependency