运行sbt失败 - java.io.IOException:设备上没有剩余空间

时间:2015-06-30 17:43:19

标签: java scala sbt ioexception

真的坚持这个...所有我正在运行'sbt'进入交互模式所以我可以编译我的scala程序,我遇到了这个:

java.io.IOException: No space left on device
        at java.io.FileOutputStream.close0(Native Method)
        at java.io.FileOutputStream.close(FileOutputStream.java:362)
        at java.io.FilterOutputStream.close(FilterOutputStream.java:160)
        at java.io.FilterOutputStream.close(FilterOutputStream.java:160)
        at scala.tools.nsc.backend.jvm.BytecodeWriters$ClassBytecodeWriter$class.writeClass(BytecodeWriters.scala:93)
        at scala.tools.nsc.backend.jvm.GenASM$AsmPhase$$anon$4.writeClass(GenASM.scala:67)
        at scala.tools.nsc.backend.jvm.GenASM$JBuilder.writeIfNotTooBig(GenASM.scala:459)
        at scala.tools.nsc.backend.jvm.GenASM$JPlainBuilder.genClass(GenASM.scala:1413)
        at scala.tools.nsc.backend.jvm.GenASM$AsmPhase.run(GenASM.scala:120)
        at sbt.compiler.Eval$$anonfun$compile$1$1.apply$mcV$sp(Eval.scala:177)
        at sbt.compiler.Eval$$anonfun$compile$1$1.apply(Eval.scala:177)
        at sbt.compiler.Eval$$anonfun$compile$1$1.apply(Eval.scala:177)
        at scala.reflect.internal.SymbolTable.atPhase(SymbolTable.scala:207)
        at sbt.compiler.Eval.compile$1(Eval.scala:177)
        at sbt.compiler.Eval.compileAndLoad(Eval.scala:182)
        at sbt.compiler.Eval.evalCommon(Eval.scala:152)
        at sbt.compiler.Eval.eval(Eval.scala:96)
        at sbt.EvaluateConfigurations$.evaluateDslEntry(EvaluateConfigurations.scala:177)
        at sbt.EvaluateConfigurations$$anonfun$9.apply(EvaluateConfigurations.scala:117)
        at sbt.EvaluateConfigurations$$anonfun$9.apply(EvaluateConfigurations.scala:115)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.TraversableLike$$anonfun$map$1.apply(TraversableLike.scala:244)
        at scala.collection.immutable.List.foreach(List.scala:318)
        at scala.collection.TraversableLike$class.map(TraversableLike.scala:244)
        at scala.collection.AbstractTraversable.map(Traversable.scala:105)
        at sbt.EvaluateConfigurations$.evaluateSbtFile(EvaluateConfigurations.scala:115)
        at sbt.Load$.sbt$Load$$loadSettingsFile$1(Load.scala:710)
        at sbt.Load$$anonfun$sbt$Load$$memoLoadSettingsFile$1$1.apply(Load.scala:715)
        at sbt.Load$$anonfun$sbt$Load$$memoLoadSettingsFile$1$1.apply(Load.scala:714)
        at scala.Option.getOrElse(Option.scala:120)
        at sbt.Load$.sbt$Load$$memoLoadSettingsFile$1(Load.scala:714)
        ...

其次是:

[error] java.io.IOException: No space left on device
[error] Use 'last' for the full log.
Project loading failed: (r)etry, (q)uit, (l)ast, or (i)gnore? q

我之前从未遇到过这种情况,谷歌搜索没有帮助。

JVM是否空间不足?它指的是什么设备? 我尝试删除所有scala相关的目标文件夹(基本上尝试手动sbt清理),但这没有帮助。

非常感谢任何帮助!!

df结果是:

1K-blocks      Used Available Use% Mounted on

10157368   1414320   8218864  15% /var
2097152     11284   2085868   1% /tmp

所以它的其他东西

1 个答案:

答案 0 :(得分:1)

当jvm尝试写入文件时,您会收到No space left on device错误。 jvm尝试写入的硬盘分区可能没有空闲空间。由于您尝试删除文件夹但未成功,请检查例如/tmp/var是否已满。 (遗憾的是,我不知道Scala工具在哪里编写这些编译的类,但是使用/tmp这听起来是合理的。)