2

私はneo4j-rest-graphdb-1.8-SNAPSHOT.jarの新しいビルドを持っています。しかし、私は門のすぐ外で問題を抱えています。

有効なグラフストアで構成されたNeo4jの基本/デフォルトインストールを実行しています:

Neo4jバージョン

グラフデータベースカーネル1.8.M05

OS

Ubuntu 12.04 LTS

Javaバージョン

「1.6.0_24」OpenJDKランタイム環境(IcedTea6 1.11.1)(6b24-1.11.1-4ubuntu3)OpenJDK 64ビットサーバーVM(ビルド20.0-b12、混合モード)

curlリクエストは、すべてが正常に機能していることを示しています。

$ curl http://localhost:7474/db/data/ -i
HTTP/1.1 200 OK
Content-Length: 809
Content-Encoding: UTF-8
Content-Type: application/json
Access-Control-Allow-Origin: *
Server: Jetty(6.1.25)

{
  "extensions" : {
    "CypherPlugin" : {
      "execute_query" :     "http://localhost:7474/db/data/ext/CypherPlugin/graphdb/execute_query"
    },
    "GremlinPlugin" : {
      "execute_script" :     "http://localhost:7474/db/data/ext/GremlinPlugin/graphdb/execute_script"
    }
  },
  "node" : "http://localhost:7474/db/data/node",
  "reference_node" : "http://localhost:7474/db/data/node/0",
  "node_index" : "http://localhost:7474/db/data/index/node",
  "relationship_index" : "http://localhost:7474/db/data/index/relationship",
  "extensions_info" : "http://localhost:7474/db/data/ext",
  "relationship_types" : "http://localhost:7474/db/data/relationship/types",
  "batch" : "http://localhost:7474/db/data/batch",
  "cypher" : "http://localhost:7474/db/data/cypher",
  "neo4j_version" : "1.8.M05-1-ge9cdca9"

しかし、次の行を試みます:

GraphDatabaseServiceグラフ=新しいRestGraphDatabase( "http:// localhost:7474 / db / data /");

...例外が発生します:

Exception in thread "main" java.lang.NoClassDefFoundError:     javax/ws/rs/core/Response$StatusType
    at org.neo4j.rest.graphdb.RestAPIFacade.<init>(RestAPIFacade.java:265)
    at org.neo4j.rest.graphdb.RestGraphDatabase.<init>(RestGraphDatabase.java:44)
    at com.tester.api.Neo4j.importer(Neo4j.java:185)
    at com.tester.api.Neo4j.main(Neo4j.java:97)
Caused by: java.lang.ClassNotFoundException: javax.ws.rs.core.Response$StatusType
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 4 more
4

3 に答える 3

3

さて、私はそれが最終的にすべて私のためにゲル化したと思います:

上から:

  1. Maven2からMaven3にアップグレードされました
  2. 〜/ .m2 / repositoryを削除して、以前にダウンロードした依存関係を削除しました
  3. 次に、java-rest-binding gitリポジトリで、mvn dependency:copy-dependenciesすべての依存関係のコピーを取得し、それら(ターゲット/依存関係フォルダーの内容)をビルドパスに追加しました(Peterに感謝)
  4. Eclipseでソースからこのレストパッケージを使用すると(/ main / java / org / neo4jをプロジェクトの「org」フォルダーにコピー)、neo4jの「バッチリクエスト」タイプのパッケージが見つからないという問題が発生しました。
  5. そこで、mvn package別のフレッシュ/クローン/チェックアウトされたjava-rest-binding gitリポジトリを実行し、結果の.jar(neo4j-rest-graphdb-1.8-SNAPSHOT.jar)をプロジェクトのライブラリに(すべての依存関係とともに)コピーしました。

私はいくつかの予備テストを行いましたが、これは現在機能しているようです!

上記の手順でMavenの素朴さがわかり、将来そのような問題を回避するための簡潔なガイドを知っている場合は、それを共有してください。

ありがとう!

于 2012-07-24T14:59:52.093 に答える
2

これは、依存関係が欠落しているように見えます。https://github.com/neo4j/java-rest-binding/blob/master/pom.xmlに記載されているように、mavenを介してすべての依存関係を含めるようにしましたか?ソースからプロジェクトをビルドし、次のようにしてプロジェクトの部門を引き下げることができます。

mvn dependency:copy-dependencies

/ peter

于 2012-07-21T17:12:22.117 に答える
1

私も同じ問題を抱えていて、ジャージを持っていなかったことがわかりました。すべての依存関係を取得しようとしましたが、このjarを取得できませんでした。したがって、解決策は次のようになります。jersey-bundle-1.13-b01.jarをダウンロードするだけです。

PS:依存関係がたくさんある可能性があるため、これは解決するのに最適な方法ではないかもしれませんが、この特定のシナリオでは、欠落しているのはジャージだけなので、このように機能します:-)

于 2013-07-13T07:44:36.020 に答える