Grails:如何迁移从2.x.x升级到3.0.8的依赖项?

时间:2015-10-29 19:02:40

标签: grails

我正在尝试将现有的Grails应用程序从 2.4.4 升级到 3.0.8 。我有几个问题,目前无法解决。

第一期:旧版本BuildConfig.groovy引用了lib目录中的jar文件。我尝试将相同的配置从BuildConfig.groovy复制到build.gradle并使用jar创建了一个lib目录,但Grails无法解析依赖关系。

第二个问题:旧版本定义了一个插件。我尝试将同一个插件定义从BuildConfig.groovy复制到build.gradle,但这不起作用。我注意到该插件目前没有在Bintray中列出,这是问题吗?

以下是build.gradle文件的依赖关系部分。

dependencies {
    compile "org.springframework.boot:spring-boot-starter-logging"
    compile "org.springframework.boot:spring-boot-starter-actuator"
    compile "org.springframework.boot:spring-boot-autoconfigure"
    compile "org.springframework.boot:spring-boot-starter-tomcat"
    compile "org.grails:grails-dependencies"
    compile "org.grails:grails-web-boot"

    compile "org.grails.plugins:hibernate"
    compile "org.grails.plugins:cache"
    compile "org.hibernate:hibernate-ehcache"
    compile "org.grails.plugins:scaffolding"

    compile "com.stripe:stripe-java:1.32.1"
    compile "com.google.code.gson:gson:2.3.1"
    compile "javax.mail:mail:1.4"

    runtime "org.grails.plugins:asset-pipeline"

    testCompile "org.grails:grails-plugin-testing"
    testCompile "org.grails.plugins:geb"

    // Note: It is recommended to update to a more robust driver (Chrome, Firefox etc.)
    testRuntime 'org.seleniumhq.selenium:selenium-htmlunit-driver:2.44.0'

    console "org.grails:grails-console"

    //jar file located in lib directory
    runtime "com.easypost:easypost-java:2.1.2"

    //grails plugin
    compile ":shiro:1.2.1"
}

提前感谢您提供的任何指导。

1 个答案:

答案 0 :(得分:0)

问题1 :如果那个jar是标准jar并且你可以从maven引用它那么那将是好的。但是如果你需要从一些本地目录中包含它,那么你可以这样做:

repositories {
   flatDir {
       //Directory path containing Jar
       dirs 'libs'
   }
}


dependencies {
   //Jar File Name - No need to add suffix .jar
   compile name: 'someJarFile'
} 

问题2 :如果插件未在bintray中列出,那么这意味着它尚未针对Grails 3.x升级。您可以自己升级它,也可以在可能的情况下删除插件。