2009-12-23 60 views

回答

11

简短的回答是GWT可以调用使用Scala编写的程序。用Scala编写的最流行的Web框架是Lift - http://liftweb.net/,如果你想要一个纯粹的Scala解决方案,它将成为GWT的替代品。

GWT是一个使用Java编写的Web框架。客户端用Java语言编写,编译成JavaScript,服务器端用Java编写,可以使用Java JVM中可用的任何资源。 Scala是一种编译成可在JVM上执行的字节码并可与标准Java程序进行交互的语言。

+1

hmmm ...编译成字节码以便有效地防止简单的GWT集成。我看到(我正在学习斯卡拉,因为我们“说”)。谢谢 – jldupont 2009-12-23 22:42:46

3

如果你的意思 Google App Engine,用于托管Web应用程序的服务, answer is yes

如果你的意思是Google Web Toolkit,这是用于将Java编译成JavaScript以在浏览器中运行的工具,我很确定答案是否定的。编译为JavaScript时,GWT会执行各种代码分析,并且这依赖于具有Java源文件以及.class文件。

+1

没有我的意思是GWT,而不是GAE很多的解释。 – jldupont 2009-12-23 22:33:29

+0

在这种情况下,问题更好地表达为:“GWT是否运行在Scala代码上?”当然,这个软件是“不,只有Java”。 – 2009-12-24 01:27:00

5

GWT编译器适用于Java源代码,因为它提供了最大的可见性,以便在编译为Javascript时进行优化。偶尔有关于使用字节码的讨论,但问题总是会导致如果编译器使用字节码而不使用源代码,那么很多优化将会丢失。

尽管如此,还是有一条关于supporting Scala的有趣线索。然而,GWT团队在这一点上的优先级似乎更侧重于Java语言编译器。

18

正如已经说过的... 但是到现在还没有! This project应该使GWT能够支持客户端的Scala代码。此外,该项目还得到Google工程师的支持。

0

有趣。在这种情况下,如果我想生成好的Web 2.0 w/Ajax的JavaScript,我将转移到最初是GWT的python端口的python和睡衣。它还具有其他一些有趣的属性,例如生成代码以作为独立于平台的桌面应用运行。我不喜欢写POJO,因为POJO被转换为其他东西而受到限制。

+1

这个“答案”看起来更像是一个评论,因此,应该作为评论而不是“答案”输入, – jldupont 2010-08-18 09:54:38

3

我知道两个解决此问题的项目。

Jribble(pronounced dribble)是java的一种特殊形式,它没有java的某些人为约束,因此它可以用于scala字节,并且仍然为GWT提供生成高效javascript所需的信息。他们提到了一个名为scalagwt-sample(http://github.com/rfc2616/scalagwt-sample)的github项目,该项目似乎相当活跃。

我读过的另一篇文章有​​一个使用j2js(GWT的一部分)的人将scala编译为javascript。他们不会让我把多个超链接,但这里是网址:

http://www.j2js.com/scala-demo/scala-days-2010-paper.pdf

我还没有时间去尝试要么还没有,但很快希望。

1

是的!

它有Scala + GWT Project,scalagwt。 快速状态(当然我的意见): 生产使用前一步

详细的状态from scala-lang.org

斯卡拉为Javascript项目是一个研究项目,并没有什么,我们可以称之为一个产品。你可以玩得开心,但它并不完全在你的赌注上。有错误。我们需要在文档和平滑边缘方面做相当多的工作。

Github上

斯卡拉+ GWT项目旨在编译Scala代码为通过GWT工具链的浏览器。 您可以在github上分享scalagwt项目here

Scala + GWT | Google代码

见漂亮的演示,并在YouTube here

相关问题