2

次のように、小さなアプリケーション用に Grails を 2.2.4 から 2.3 にアップグレードしました。

brew upgrade grails
grails upgrade

次に、http://grails.org/doc/2.3.x/guide/upgradingFromPreviousVersionsOfGrails.html に従って BuildConfig.groovy を次のように変更しまし

grails.servlet.version = "2.5" // Change depending on target container compliance (2.5 or 3.0)
grails.project.class.dir = "target/classes"
grails.project.test.class.dir = "target/test-classes"
grails.project.test.reports.dir = "target/test-reports"
grails.project.target.level = 1.6
grails.project.source.level = 1.6
//grails.project.war.file = "target/${appName}-${appVersion}.war"

// uncomment (and adjust settings) to fork the JVM to isolate classpaths
//grails.project.fork = [
//   run: [maxMemory:1024, minMemory:64, debug:false, maxPerm:256]
//]

grails.project.dependency.resolver = "maven"

grails.project.dependency.resolution = {
    // inherit Grails' default dependencies
    inherits("global") {
        // specify dependency exclusions here; for example, uncomment this to disable ehcache:
        // excludes 'ehcache'
    }
    log "error" // log level of Ivy resolver, either 'error', 'warn', 'info', 'debug' or 'verbose'
    checksums true // Whether to verify checksums on resolve
    legacyResolve false // whether to do a secondary resolve on plugin installation, not advised and here for backwards compatibility

    repositories {
        inherits true // Whether to inherit repository definitions from plugins

        grailsPlugins()
        grailsHome()
        grailsCentral()

        mavenLocal()
        mavenCentral()

        // uncomment these (or add new ones) to enable remote dependency resolution from public Maven repositories
        //mavenRepo "http://snapshots.repository.codehaus.org"
        //mavenRepo "http://repository.codehaus.org"
        //mavenRepo "http://download.java.net/maven/2/"
        //mavenRepo "http://repository.jboss.com/maven2/"
    }

    dependencies {
        // specify dependencies here under either 'build', 'compile', 'runtime', 'test' or 'provided' scopes e.g.

        // runtime 'mysql:mysql-connector-java:5.1.22'
    }

    plugins {
//        runtime ":hibernate:$grailsVersion"
        runtime ":jquery:1.8.3"
        runtime ":resources:1.2"

        // Uncomment these (or add new ones) to enable additional resources capabilities
        //runtime ":zipped-resources:1.0"
        //runtime ":cached-resources:1.0"
        //runtime ":yui-minify-resources:0.1.5"

        build ":tomcat:7.0.40.1"

        runtime ":database-migration:1.3.2"

        compile ':cache:1.0.1'
        compile ":scaffolding:1.0.0"
        compile "net.sf.ehcache:ehcache-core:2.4.6"

        compile ":mongodb:1.3.0"
    }
}

追加/変更されたのは次の行のみです。

grails.project.dependency.resolver = "maven"
build ":tomcat:7.0.40.1"
compile ":scaffolding:1.0.0"
compile "net.sf.ehcache:ehcache-core:2.4.6"

しかし、grails run-app私は次のようになります:

| Loading Grails 2.3.0
| Configuring classpath
| Error Resolve error obtaining dependencies: Could not find artifact net.sf.ehcache:ehcache-core:zip:2.4.6 in grailsCentral (http://repo.grails.org/grails/plugins) (Use --stacktrace to see the full trace)
| Error Resolve error obtaining dependencies: Could not find artifact net.sf.ehcache:ehcache-core:zip:2.4.6 in grailsCentral (http://repo.grails.org/grails/plugins) (Use --stacktrace to see the full trace)
| Error Resolve error obtaining dependencies: Could not find artifact net.sf.ehcache:ehcache-core:zip:2.4.6 in grailsCentral (http://repo.grails.org/grails/plugins) (Use --stacktrace to see the full trace)
| Error Could not find artifact net.sf.ehcache:ehcache-core:zip:2.4.6 in grailsCentral (http://repo.grails.org/grails/plugins)
| Run 'grails dependency-report' for further information.

そのため、ehchache-core を解決できません。どうすれば修正できますか?

4

2 に答える 2

15

compile "net.sf.ehcache:ehcache-core:2.4.6"プラグインではなく、依存関係として追加する必要があります。

dependencies {
    compile "net.sf.ehcache:ehcache-core:2.4.6"
}

将来、以下のように hibernate プラグインを使用する場合

plugins {
    runtime ":hibernate:3.6.10.1" //or hibernate 4
}

すでにプラグインehcache-coreの推移的な依存関係であるため、依存関係は必要ありません。アップグレード ガイドhibernateを読む必要があります。

于 2013-09-14T14:54:03.490 に答える
0

リポジトリに ehache バージョン 2.4.6 が見つかりませんでした...

Maven Central で検索しました: http://search.maven.org/#search|gav|1|g%3A%22net.sf.ehcache%22%20AND%20a%3A%22ehcache-core%22

だから私の依存関係は次のようになりました:

dependencies {
    compile 'net.sf.ehcache:ehcache-core:2.6.5'
} 
于 2014-05-28T15:43:00.423 に答える