我使用此命令构建了一个电梯项目:
mvn archetype:generate -U \
-DarchetypeGroupId=net.liftweb \
-DarchetypeArtifactId=lift-archetype-basic \
-DarchetypeVersion=2.0-scala280-SNAPSHOT \
-DarchetypeRepository=http://scala-tools.org/repo-snapshots \
-DremoteRepositories=http://scala-tools.org/repo-releases \
-DgroupId=demo.helloworld \
-DartifactId=helloworld \
-Dversion=1.0-SNAPSHOT
当我运行`mvn jetty:run时,它可以运行。 然后我创建了这个配置文件(helloworld / src / main / webapp / WEB-INF / appengine-web.xml):
<?xml version="1.0" encoding="utf-8"?>
<appengine-web-app xmlns="http://appengine.google.com/ns/1.0">
<application>MY_APPLICATION-ID</application>
<version>3</version>
<system-properties>
<property name="in.gae.j" value="true" />
</system-properties>
<sessions-enabled>true</sessions-enabled>
<static-files>
<exclude path="/**" />
</static-files>
</appengine-web-app>
然后我运行此命令:mvn package
当我运行dev_appserver.sh helloworld/target/helloworld-1.0-SNAPSHOT
时,它可以在我的浏览器中运行。
然后,我使用:appcfg.sh update helloworld/target/helloworld-1.0-SNAPSHOT
上传到Google App Engine服务器,我得到:Update completed successfully.
Success.
。
但是当我转到http://MY_APPLICATION-ID.appspot.com/时,我收到500服务器错误:
错误:服务器错误服务器 遇到错误而不能 完成您的请求。
如果问题仍然存在,请报告 你的问题,并提到这个错误 消息和导致它的查询。
为什么?
答案 0 :(得分:2)
登录https://appengine.google.com/并查看应用程序的日志。
在Main&gt;在Logs选项卡中,您可以看到生成错误的请求以及堆栈跟踪。这可能有助于弄清问题是什么。
答案 1 :(得分:2)
您使用的是哪种版本的提升?根据我的理解,Google应用引擎无法运行所有字节码。 This article表示应用引擎的scala应用程序的成功端口bt包含一些尖锐的句子:
David Pollak已经证实大多数Lift框架都适用于App Engine
和
总的来说,看起来scalac编译器生成的jar文件非常接近Java,而App Engine却没有注意到或关注
现在,这篇文章是从2009年中开始的,所以我猜想如果你使用最新的 Lift和scala 2.8,可能会有问题。我会尝试询问Lift forums,这非常有帮助。
答案 2 :(得分:2)
我建议您阅读此主题:Lift 2.0, Scala 2.8, and AppEngine