1

組み込みの neo4j データベースを使用してアプリケーションを「アップグレード」し、サーバー ベースのセットアップを使用しようとしています。

簡単なリポジトリをセットアップするためのフレームワークとして春を使用していますが、それは魅力的に機能します。

今、org.springframework.data:spring-data-neo4j の依存関係を含めようとしているので、neo4j サーバーに接続できるようになります。ただし、gradle と maven の両方、および異なるバージョンの spring data neo4j rest では失敗します。そして、pom を取得するときに 401 Unauthorized という新しい例外があります。

* What went wrong:
  Could not resolve all dependencies for configuration ':compile'.
> Could not resolve org.neo4j:neo4j-rest-graphdb:1.9.
Required by:
  :recipeCrawlers:unspecified > org.springframework.data:spring-data-neo4j-rest:2.4.0.BUILD-SNAPSHOT
> Could not HEAD 'http://repo.spring.io/libs-snapshot/org/neo4j/neo4j-rest-graphdb/1.9/neo4j-rest-graphdb-1.9.pom'. Received status code 401 from server: Unauthorized

誰でも私が間違っていることを知っています

私のbuild.gradleの一部は次のとおりです。

buildscript {
repositories {
    maven { url 'http://m2.neo4j.org/content' }
    maven { url "http://repo.spring.io/libs-snapshot" }
    mavenLocal()
}
dependencies {
    classpath("org.springframework.boot:spring-boot-gradle-plugin:0.5.0.M5")
}
}

apply plugin: 'java'  
apply plugin: 'eclipse'
apply plugin: 'spring-boot'

jar {
baseName = 'crawlers'
version =  '0.1.0'
} 

repositories {
 mavenCentral()
 maven { url "http://repo.spring.io/libs-snapshot" }
}

dependencies {
 compile("org.springframework.boot:spring-boot-starter:0.5.0.M5")
 compile("org.springframework.data:spring-data-mongodb:1.3.2.RELEASE")
 compile("com.google.guava:guava-collections:r03")
 compile("org.apache.commons:commons-lang3:3.0")
 compile 'org.springframework.data:spring-data-neo4j:2.4.0.BUILD-SNAPSHOT'
 compile 'org.springframework.data:spring-data-neo4j-rest:2.4.0.BUILD-SNAPSHOT'
 //    compile 'org.neo4j:neo4j-rest-graphdb:1.9'

 compile 'javax.validation:validation-api:1.1.0.Final'
 compile 'org.hibernate:hibernate-validator:5.0.1.Final'

 // compile 'org.neo4j:neo4j-cypher:'

 testCompile("junit:junit:4.11")
}

task wrapper(type: Wrapper) {
 gradleVersion = '1.8'
}

同じ依存関係でmavenを使用すると、次のエラーが発生します。

Could not resolve dependencies for project com.emaat-sample:jar:0.0.1-SNAPSHOT: Failed to   collect dependencies for [org.springframework.boot:spring-boot-starter:jar:0.5.0.M5 (compile), org.springframework.data:spring-data-neo4j:jar:2.4.0.BUILD-SNAPSHOT (compile), org.springframework.data:spring-data-neo4j-rest:jar:2.4.0.BUILD-SNAPSHOT (compile), junit:junit:jar:4.11 (test), org.mockito:mockito-core:jar:1.9.5 (test), org.hamcrest:hamcrest-library:jar:1.3 (test)]: Failed to read artifact descriptor for org.neo4j:neo4j-rest-graphdb:jar:1.9: Could not transfer artifact org.neo4j:neo4j-rest-graphdb:pom:1.9 from/to spring-snapshots (http://repo.spring.io/libs-snapshot): Not authorized, ReasonPhrase:Unauthorized. -> [Help 1]

私の pom ファイル: http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4.0.0 com.emaat サンプル 0.0.1-SNAPSHOT サンプル

<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>0.5.0.M5</version>
</parent>

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-neo4j</artifactId>
        <version>2.4.0.BUILD-SNAPSHOT</version>
    </dependency>
    <dependency>
        <groupId>org.springframework.data</groupId>
        <artifactId>spring-data-neo4j-rest</artifactId>
        <version>2.4.0.BUILD-SNAPSHOT</version>
    </dependency>
</dependencies>

<!-- Package as an executable JAR -->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

<repositories>
    <repository>
        <id>spring-snapshots</id>
        <url>http://repo.spring.io/libs-snapshot</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <id>spring-snapshots</id>
        <url>http://repo.spring.io/libs-snapshot</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </pluginRepository>
</pluginRepositories>
</project>
4

1 に答える 1

3

「org.restlet.jee:org.restlet.ext.servlet:2.1.1」依存関係を解決しようとしたときに、私にとっては推移的な依存関係であったため、同じ問題が発生しました。「org.restlet.jee:org.restlet.ext.servlet:2.1.1」が Maven Central に存在しないことが判明したため、gradle は Spring IO リポジトリを試します。Spring IO リポジトリは多少制限されており、特定の依存関係に対してセキュリティ例外をスローします。

これは org.neo4j:neo4j-rest-graphdb:1.9 にも当てはまるようです。クイック検索では、これが Maven Central に存在しないことが示されるため、新しいリポジトリを追加する必要があります (Spring IO リポジトリの前に追加しました)。リポジトリを追加することで、Spring Boot を使い続けることができました。

問題を再現し、リポジトリセクションを次のように変更して解決しました。

repositories {
    mavenCentral()
    maven { url "http://m2.neo4j.org/content/repositories/releases/" }
    maven { url "http://repo.spring.io/libs-snapshot" }
}
于 2014-01-10T03:59:25.693 に答える