Scala GAE项目 - 无法在intellij中编译

时间:2012-08-31 05:10:49

标签: java google-app-engine scala intellij-idea

我在scala中有一个大的GAE(Gooogle应用程序引擎)项目,并且在组合中有一个java。我有scala插件的intellij 11。

我添加了战争爆炸到服务器配置但是当我尝试编译时,这失败了。 我唯一的线索是:

error while loading CrawlQuery, class file 'very/long/path/Foo.class' is broken
(Scala class file does not contain Scala annotation)

我检查了信息,看起来问题是@JsonTypeInfo的一些变形: scala 2.9.1

https://issues.scala-lang.org/browse/SI-5165失败

我从2.9.1改为2.9.2但是没有用。 (我下载了一个scala-compiler.2.9.2.jar,我作为全局库添加到项目中)

此外,我从http://www.scala-lang.org/node/309下载了scala库,并创建了一个虚拟项目来设置为全局库,如下所示:Setting up scala with IntelliJ

我的一个朋友使用Eclipse编译同一个项目,使用插件http://scala-ide.org/并为他工作。

2 个答案:

答案 0 :(得分:1)

在检查了一些解决方法之后,我们的解决方案是创建一个带有jackson符号的界面,并将其作为mixint添加到类中:

import com.fasterxml.jackson.annotation.JsonTypeInfo;

@JsonTypeInfo(use = JsonTypeInfo.Id.MINIMAL_CLASS, include = JsonTypeInfo.As.PROPERTY, property = "@class")
public interface JsonTypeMixin {

}

并在实施中:

 objectMapper.addMixInAnnotations(classOf[Post], classOf[JsonTypeMixin])

答案 1 :(得分:0)

您还应该告诉IntelliJ使用您下载的新Scala编译器:http://confluence.jetbrains.net/download/attachments/12353606/new_project4.png