Grails应用程序赢得';t在AmazonEC2中运行,但在windows中运行良好
我有一个grails应用程序,它在windows中运行得非常好,并且作为WAR文件部署到Amazon elastic beanstalk中时也运行得非常好。但它不会在AmazonEC2机器上运行。为什么会这样?以下是我尝试运行时得到的输出:Grails应用程序赢得';t在AmazonEC2中运行,但在windows中运行良好,grails,amazon-web-services,amazon-ec2,Grails,Amazon Web Services,Amazon Ec2,我有一个grails应用程序,它在windows中运行得非常好,并且作为WAR文件部署到Amazon elastic beanstalk中时也运行得非常好。但它不会在AmazonEC2机器上运行。为什么会这样?以下是我尝试运行时得到的输出: | Compiling 134 source files. | Error Compilation error: startup failed: Compile error during compilation with javac. /home/ec2-u
| Compiling 134 source files.
| Error Compilation error: startup failed:
Compile error during compilation with javac.
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:42: error: no interface expected here
public class ScaffoldingViewResolver extends GrailsViewResolver {
^
/home/ec2-user/FatcaOne_0/target/work/plugins/cache-1.1.2/src/java/grails/plugin/cache/web/
PageInfo.java:37: error: package net.sf.cglib.proxy does not exist
import net.sf.cglib.proxy.Callback;
^
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldedGroovyPageView.java:87: error: method createResponseWriter in class GroovyPageView cannot be applied to given types;
out = createResponseWriter(response);
^
required: GrailsWebRequest,HttpServletResponse
found: HttpServletResponse
reason: actual and formal argument lists differ in length
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldedGroovyPageView.java:75: error: method does not override or implement a method from a supertype
@Override
^
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:88: error: cannot find symbol
return super.createFallbackView(viewName);
^
symbol: variable super
location: class ScaffoldingViewResolver
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:58: error: method does not override or implement a method from a supertype
@Override
^
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:97: error: cannot find symbol
view.setApplicationContext(getApplicationContext());
^
symbol: method getApplicationContext()
location: class ScaffoldingViewResolver
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:98: error: cannot find symbol
view.setServletContext(getServletContext());
^
symbol: method getServletContext()
location: class ScaffoldingViewResolver
/home/ec2-user/FatcaOne_0/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:99: error: cannot find symbol
view.setTemplateEngine(templateEngine);
^
symbol: variable templateEngine
location: class ScaffoldingViewResolver
/home/ec2-user/FatcaOne_0/target/work/plugins/cache-1.1.2/src/java/grails/plugin/cache/web/PageInfo.java:418: error: cannot find symbol
if (value instanceof Callback || value instanceof Callback[]) {
^
symbol: class Callback
location: class PageInfo
/home/ec2-user/FatcaOne_0/target/work/plugins/cache-1.1.2/src/java/grails/plugin/cache/web/PageInfo.java:418: error: cannot find symbol
if (value instanceof Callback || value instanceof Callback[]) {
^
symbol: class Callback
location: class PageInfo
11 errors
1 error
您是否可能使用grails集版本更改grails版本?我发现这在Ec2上不起作用。您需要继续使用最初使用的grails版本。试试看。您是否可能使用grails set version更改grails版本?我发现这在Ec2上不起作用。您需要继续使用最初使用的grails版本。试试看。grails set版本对我来说似乎运行良好 我认为发生的事情是您没有按照升级说明进行操作:
您需要升级您的scaffolding版本(以及其他一些东西),当然,使用您创建的项目版本可以工作,但是如果您想升级到2.4,您需要遵循这些说明。grails set版本对我来说似乎工作得很好 我认为发生的事情是您没有按照升级说明进行操作:
您需要升级您的scaffolding版本(以及其他一些东西),当然,使用您创建的项目版本可以工作,但是如果您想升级到2.4,则需要遵循这些说明。当我将Grails应用程序从2.3.11移到Grails 2.5.6时,我遇到了以下错误:
Compilation error: startup failed:
Compile error during compilation with javac.
/Users/brippe/Projects/server/server/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:42: error: no interface expected here
public class ScaffoldingViewResolver extends GrailsViewResolver {
^
/Users/brippe/Projects/server/server/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldedGroovyPageView.java:75: error: method does not override or implement a method from a supertype
@Override
为了修复这些错误,我将scaffolding插件从2.0.3更改为2.1.2:
plugins {
build: ..
compile ":scaffolding:2.1.2"
}
更改为2.1.2版后,错误消失了。当我将Grails应用程序从2.3.11移动到Grails 2.5.6时,我遇到了以下错误:
Compilation error: startup failed:
Compile error during compilation with javac.
/Users/brippe/Projects/server/server/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldingViewResolver.java:42: error: no interface expected here
public class ScaffoldingViewResolver extends GrailsViewResolver {
^
/Users/brippe/Projects/server/server/target/work/plugins/scaffolding-2.0.3/src/java/org/codehaus/groovy/grails/scaffolding/view/ScaffoldedGroovyPageView.java:75: error: method does not override or implement a method from a supertype
@Override
为了修复这些错误,我将scaffolding插件从2.0.3更改为2.1.2:
plugins {
build: ..
compile ":scaffolding:2.1.2"
}
更改为2.1.2版后,错误消失。您没有提供足够的信息来获得完整答案。看起来您正在EC2实例上编译,为什么要这样做?您可能没有在EC2上设置所有的库和环境变量,所以它正在爆炸。为什么不在本地编译并在EC2实例上部署WAR?您没有提供足够的信息来获得完整的答案。看起来您正在EC2实例上编译,为什么要这样做?您可能没有在EC2上设置所有的库和环境变量,所以它正在爆炸。为什么不在本地编译并在EC2实例上部署WAR呢?耶!在“Grails in Action 2nd ed.”的第一个演示中有这样的内容:“应用程序需要Grails版本[2.3.7],但Grails_HOME是版本[2.5.1]……请注意,最新的Grails 3是“Grails-3.0.5”,最新的Grails 2是“Grails-2.5.1”“.是时候降级了?因为这是一台AmazonEC2Linux机器,所以没问题:下载旧的Grails,设置路径和Grails\u主页。。。但是我真的需要。。。哦,好吧。然后降级到JDK7,我想,在我知道更多之前,这就行了。耶!在“Grails in Action 2nd ed.”的第一个演示中有这样的内容:“应用程序需要Grails版本[2.3.7],但Grails_HOME是版本[2.5.1]……请注意,最新的Grails 3是“Grails-3.0.5”,最新的Grails 2是“Grails-2.5.1”“.是时候降级了?因为这是一台AmazonEC2Linux机器,所以没问题:下载旧的Grails,设置路径和Grails\u主页。。。但是我真的需要。。。哦,好吧。然后降级到JDK7,我想在我了解更多之前,这就行了。