如何将外部Scala编译器与IDEA 12结合使用?

如何将外部Scala编译器与IDEA 12结合使用?,scala,intellij-idea,Scala,Intellij Idea,如何将外部Scala编译器与IDEA结合使用?我似乎有随机出现的错误,比如“scala:无法连接到localhost/127.0.0.1:3200上的编译服务器” 有时它是有效的。有时候不是。我找不到图案 这是我日志里的东西 9:20:58 PM Auto make completed with errors 9:21:09 PM Using a new (SBT-based) Scala compiler. In case of any compilation probl

如何将外部Scala编译器与IDEA结合使用?我似乎有随机出现的错误,比如“scala:无法连接到localhost/127.0.0.1:3200上的编译服务器”

有时它是有效的。有时候不是。我找不到图案

这是我日志里的东西

9:20:58 PM Auto make completed with errors
9:21:09 PM Using a new (SBT-based) Scala compiler.
           In case of any compilation problems you may enable the previous (internal) compiler by clearing:
           Project Settings / Compiler / Use external build
9:21:10 PM Scala compile server
           Error: Could not create the Java Virtual Machine.
           Error: A fatal exception has occurred. Program will exit.

9:21:12 PM Compilation completed with 1 error and 0 warnings in 3 sec
我正在使用

  • 想法12.1(129.161)
  • Scala编译器2.10.1
  • Scala插件0.7.213
  • JDK1.7
  • 视窗7
在项目设置/编译器/使用外部生成中选中。 在IDE设置中,选中了/Scala/Run编译服务器

我需要手动启动编译器服务器吗?还有别的吗


UPD:在我看来像虫子。我发布了JIRA罚单

它正常工作,无需更改任何设置。这听起来像是端口冲突、以前不干净的关机导致的结果或堆大小不足

尝试更改编译服务器端口,方法是转到
Settings->Scala(在idesettings列表下,朝底部)->TCP端口
。在那里,您还可以设置不同的最大堆大小


这个问题可能与OpenTicket有关。

您可以尝试我编写的这个简单项目,它使用sbt idea插件。它应该与最新的Intellij IDEA或Scala IDE(EClipse)一起开箱即用


我归档的bug被标记为已修复。喷气式飞机的解释是

“修复”意味着编译现在默认工作,因此主要问题(如标题所述)得以解决。
但是,在自动生成之前自动启动初始编译服务器仍然不容易实现。这就是为什么Scala项目默认情况下仍然关闭“自动生成”的原因。当然,我们还是要支持自动生成。

转到设置->编译器,取消选中“使用外部构建”

您需要将堆大小从1024降低到512或其他。然后可以创建并启动编译服务器。
尝试使用IntelliJ 13.0.2(133.331)和Scala插件0.26.361时,IntelliJ也有同样的问题,如果打开事件日志(在IDE的右下角),您会看到错误消息,即Scala编译器未配置jdk版本,并提供设置它的链接


Settings>Languages and Frameworks>Scala Compile Server>JVM SDK
中,将IDE使用的java设置为

将堆大小减少到512或128 MB对我来说很有效

不,这没有任何区别。事实上,我没有看到任何进程将端口设置为打开状态。你们知道谁和什么时候启动编译服务器吗?从版本12开始,IntelliJ启动它。那么,在您重新启动并启动IntelliJ之后,它会给您带来那个异常吗?@lexWriteShare看起来像是IDEA bug。我添加了到JIRA票的链接。谢谢你的帮助,亚历克斯@CrazyCoder它并没有回答为什么编译器服务器没有启动的问题。更多细节请参阅。如果你在Mac上,这可能是环境问题,像这样运行IDEA可能会有帮助:
open-a/Applications/IntelliJ\IDEA\12.app/
@CrazyCoder System reboot修复了它。伙计们,这绝对不酷。当问题和想法再次出现时,我会更新它。@CrazyCoder很好地证明它只在第一次调试会话中起作用。所有后续的运行都会导致“错误:找不到或加载主类测试”错误。这对我很有效。你介意解释一下这个技巧吗?事实上我是偶然发现的,但它起了作用,所以我想和大家分享一下。这对我起了作用,你知道为什么会有不同吗?一点也不知道。我主要是一个C#型的人,只是偶尔会做Java和Scala。这种堆大小调整对我们来说永远都是不可用的(低C.)只是开玩笑。我真的不知道为什么。不…Intellij15,我仍然能理解。