当我们通过'grails run-app'运行它时,我们有一个运行良好的应用程序。 但是当我们构建战争并部署它时,我们会在任何请求的URL上收到404错误(例如找不到“/index.gsp”)。
可能是什么原因?
grails run-app
行
grails war
404错误,资源不可用
grails test run-war
404错误,资源不可用
这是插件配置:
plugins {
// plugins for the build system only
build ":tomcat:7.0.55"
// plugins for the compile step
compile ":scaffolding:2.1.2"
compile ':cache:1.1.7'
compile ":asset-pipeline:1.9.9"
// plugins needed at runtime but not for compilation
runtime ":hibernate4:4.3.5.5" // or ":hibernate:3.6.10.17"
runtime ":database-migration:1.4.0"
runtime ":jquery:1.11.1"
// Uncomment these to enable additional asset-pipeline capabilities
//compile ":sass-asset-pipeline:1.9.0"
//compile ":less-asset-pipeline:1.10.0"
//compile ":coffee-asset-pipeline:1.8.0"
//compile ":handlebars-asset-pipeline:1.3.0.3"
}
答案 0 :(得分:0)
您的开发环境是什么(Windows?),您的目标环境是什么(Unix,Linux?)。我不得不在目标环境(Linux)上重新编译我的WAR文件,因为我在Windows中创建的WAR文件中找不到与资源类似的问题。
幸运的是,我为Windows下载的Grails也在Unix上工作(两者都需要运行JVM)。因此,请尝试将Grails复制到目标环境,然后按照以下步骤操作:
grails create-app your-project-name
grails clean-all
grails refresh-dependencies
grails compile
grails prod war
我怀疑其中一个库(如Oracle的ojdbc6.jar)依赖于移植到其他操作系统时需要重新编译的本地系统调用。
希望有所帮助。
答案 1 :(得分:0)
通过将过滤器移出包装解决。