我正在尝试将现有的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"
}
提前感谢您提供的任何指导。
答案 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升级。您可以自己升级它,也可以在可能的情况下删除插件。