我尝试使用grails run-app
命令启动webapp但是我遇到以下错误:
| Compiling 8 source files
| Compiling 81 source files.....
| Error No default container found. Please install a container plugin such as 'tomcat' first.
BuildConfig.groovy包含构建":tomcat:$grailsVersion"
我不知道解决这个问题。
感谢您的帮助!
EDIT1:我修改了我的BuildConfig.groovy并且它包含:http://pastebin.com/7S16HNHY但它没有解决我的错误。
我用grails create-app my-project
创建了一个应用程序,它运行正常!
答案 0 :(得分:4)
尝试删除{user-home}/.grails/2.2.4/projects/{your-project}
。如果您对丢失任何内容感到紧张,可以将文件夹备份到另一个目录,但文件夹中的所有内容都应该是生成的文件。然后再次执行run-app
,看看它是否解决了您的问题。
此外,Burt Beckwith在Programming Grails中的一个很好的建议是更改BuildConfig.groovy
文件中的行
grails.project.class.dir = "target/classes"
grails.project.test.class.dir = "target/test-classes"
grails.project.test.reports.dir = "target/test-reports"
到
grails.project.work.dir = 'target'
然后,如果你的项目进入一个不可恢复的状态,你只需要清除/target
目录,所有内容都将为你重新生成。
答案 1 :(得分:3)
请参阅BuildConfig.groovy
中的how plugins are declared。
至少需要此部分:
grails.project.dependency.resolution = {
inherits("global") {
}
repositories {
grailsPlugins()
grailsHome()
grailsCentral()
}
plugins {
build ":tomcat:$grailsVersion"
}
}
答案 2 :(得分:3)
如果将来参考,如果按照Release Notes升级到Grails 2.3.7:
推荐的Tomcat和Hibernate插件版本
如果您要从以前版本的Grails 2.3.x升级而且您正在升级 使用你需要更新的Hibernate和/或Tomcat插件
BuildConfig
中的版本:build ':tomcat:7.0.52.1' runtime ':hibernate:3.6.10.10' // ':hibernate4:4.3.4.1' for Hibernate 4