2014-04-22 49 views
8

我有Intellij-IDEA 13.1.2。 [编辑,以前13.0.2] 我使用scala插件。 我正在尝试使用工作表来评估代码。斯卡拉工作表不工作在Intellij

但我得到的是两个错误:

bad macro impl binding: versionFormat is supposed to be there 
Unable to read an event from: rO0ABXNyADVvcmcuamV0YnJhaW5zLmpwcy5pbmNyZW1lbnRhbC... 

我可以正常运行斯卡拉控制台,并在其中执行我的代码, 但工作表不起作用。 如果我的代码不正确,它会输出一个错误,指示解释器无法解析我的代码。只有我的代码是正确的,我才得到“错误的宏指令绑定”错误。

我试过创建一个新项目,但没有奏效。 我跟着教程在intellij中配置scala,但它也没有帮助。

有没有我可能错过的重要配置步骤?那个错误是什么意思?

编辑:我想在我的工作中最简单的事情像1或变种x = 1或的println(的“Hello World!”)

EDIT2:我不知道我改变了,但现在我有另一个错误: 错误:加载MacroPrinter时出错,MacroPrinter所需的类文件丢失。 软件包反射的参考值宏指的是不存在的符号。

UPDATE:现在能正常工作的IntelliJ 13.1.5下,斯卡拉插件0.41.2既斯卡拉2.10和2.11

+0

首先,您可以使用最新版本。 IntelliJ在13.1.2和Scala插件0.35.654;工作表是相当新的,所以我会除了更新的插件更好 –

+0

谢谢,我也尝试,但我仍然得到相同的错误... – gwenzek

+0

你试图评估哪些代码?你应该把它包括在你的问题中,否则很难说出你的问题在哪里。 –

回答

3

我有“无法读取事件”的问题,并从斯卡拉2.11切换。 0 Scala 2.10.4为我修好了。

+0

谢谢!它也为我修好了。 – gwenzek

+0

这对我来说也是如此。我不知道这个问题是否与2.11.1一致。 – Roberto

+0

我得到了与Scala 2.11.1(最新版本)相同的错误。 – Roberto

2

我分享了a similar question一种变通方法,我认为它可以为这个问题以及工作:

我在使用最新的理念和Scala插件同样的问题。
看来,工作表执行任何计算单位的行都有问题。分配是单位,这就是为什么你的tableTest(0) = "zero"失败。

我暂时用以下解决方法解决它:

这条线将失败,错误Error:Unable to read an event from:...

println("Will fail") 

您可以通过定义这个辅助方法和使用它的任何单位表达解决它:

def unit(f: => Unit): String = {f; ""} 
unit(println("Will work")) 

你一定要忽略它在输出面板res0: String =生成线你也可以把这个方法放在一些对象中,并导入你需要的任何WS。

+0

嗯,这帮助了我。至少它将问题隔离到正在返回单位的声明。如果使用这个bandaid,我们中的一些人可以继续完成他们的任务。 –

1

我使用IntelliJIDEA 13.1.2和Scala插件0.36.431。我试图创建一个Scala非SBT项目并创建了一个工作表文件,然后遇到了“不良宏宏impl绑定”问题。但是如果我用工作表文件创建了一个Scala SBT项目,它运行良好。

+0

是的,它也适用于我,我认为这是因为SBT默认使用scala 2.10 – gwenzek

1

在使用JRE 1.7.0_60和Scala 2.11.0更新到IntelliJ 13.1.5 build 135.1289之后,我遇到了同样的问题。

我通过禁用设置 - > IDE设置 - > Scala - >“运行编译服务器”中的复选框来解决了这个问题。

+0

你是一个天才!没有其他工作对我来说,但是这样做!谢谢!!! –