如何创建允许实例化IMain的IntelliJ IDEA运行配置

0__

能够在IntelliJ IDEA 12 CE调试器中运行Scala解释器的窍门是什么?例如:

import scala.tools.nsc.interpreter.{JLineCompletion, IMain}
import scala.tools.nsc.Settings

object IntpTest extends App {
  val settings  = new Settings
  settings.Yrepldebug.tryToSetFromPropertyValue("true")
  settings.usejavacp.tryToSetFromPropertyValue("true")
  val intp      = new IMain(settings)
  intp.initializeSynchronous()           // elaborate way of heating the CPU
  assert(intp.isInitializeComplete)
  println("----READY TO GO----")
  // ... later stuff here ....
  intp.close()
}

如果为此创建运行配置并启动调试器,则该应用程序似乎在注释行中永远冻结,CPU旋转速度最大,什么也没发生。


编辑:似乎挂在类路径解析,可能会产生一些无限循环?

"main@1" prio=5 tid=0x1 nid=NA runnable
  java.lang.Thread.State: RUNNABLE
  at java.lang.String.hashCode(String.java:1493)
  at scala.runtime.ScalaRunTime$.hash(ScalaRunTime.scala:210)
  at scala.collection.mutable.HashTable$HashUtils$class.elemHashCode(HashTable.scala:398)
  at scala.collection.mutable.HashMap.elemHashCode(HashMap.scala:39)
  at scala.collection.mutable.HashTable$class.findEntry(HashTable.scala:130)
  at scala.collection.mutable.HashMap.findEntry(HashMap.scala:39)
  at scala.collection.mutable.HashMap.get(HashMap.scala:69)
  at scala.reflect.io.ZipArchive.ensureDir(ZipArchive.scala:111)
  at scala.reflect.io.ZipArchive.getDir(ZipArchive.scala:123)
  at scala.reflect.io.FileZipArchive.iterator(ZipArchive.scala:136)
  at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
  at scala.reflect.io.AbstractFile.foreach(AbstractFile.scala:91)
  at scala.tools.nsc.util.DirectoryClassPath.traverse(ClassPath.scala:308)
  at scala.tools.nsc.util.DirectoryClassPath.x$16$lzycompute(ClassPath.scala:317)
  - locked <0x3c73> (a scala.tools.nsc.util.DirectoryClassPath)
  at scala.tools.nsc.util.DirectoryClassPath.x$16(ClassPath.scala:317)
  at scala.tools.nsc.util.DirectoryClassPath.packages$lzycompute(ClassPath.scala:317)
  at scala.tools.nsc.util.DirectoryClassPath.packages(ClassPath.scala:317)
  at scala.tools.nsc.util.DirectoryClassPath.packages(ClassPath.scala:297)
  at scala.tools.nsc.util.MergedClassPath$$anonfun$packages$1.apply(ClassPath.scala:375)
  at scala.tools.nsc.util.MergedClassPath$$anonfun$packages$1.apply(ClassPath.scala:375)
  at scala.collection.Iterator$class.foreach(Iterator.scala:727)
  at scala.collection.AbstractIterator.foreach(Iterator.scala:1157)
  at scala.collection.IterableLike$class.foreach(IterableLike.scala:72)
  at scala.collection.AbstractIterable.foreach(Iterable.scala:54)
  at scala.tools.nsc.util.MergedClassPath.packages$lzycompute(ClassPath.scala:375)
  - locked <0x58fd> (a scala.tools.nsc.util.JavaClassPath)
  at scala.tools.nsc.util.MergedClassPath.packages(ClassPath.scala:370)
  at scala.tools.nsc.symtab.SymbolLoaders$PackageLoader.doComplete(SymbolLoaders.scala:243)
  at scala.tools.nsc.symtab.SymbolLoaders$SymbolLoader.complete(SymbolLoaders.scala:194)
  at scala.reflect.internal.Symbols$Symbol.info(Symbols.scala:1229)
  at scala.reflect.internal.Mirrors$RootsBase.init(Mirrors.scala:240)
  at scala.tools.nsc.Global.rootMirror$lzycompute(Global.scala:59)
  - locked <0x6db> (a scala.tools.nsc.interpreter.IMain$$anon$1)
  at scala.tools.nsc.Global.rootMirror(Global.scala:57)
  at scala.tools.nsc.Global.rootMirror(Global.scala:37)
  at scala.reflect.internal.Definitions$DefinitionsClass.<init>(Definitions.scala:166)
  at scala.reflect.internal.Definitions$definitions$.<init>(Definitions.scala:20)
  at scala.reflect.internal.SymbolTable.definitions$lzycompute(SymbolTable.scala:13)
  at scala.reflect.internal.SymbolTable.definitions(SymbolTable.scala:13)
  at scala.tools.nsc.Global$Run.<init>(Global.scala:1290)
  at scala.tools.nsc.interpreter.IMain.scala$tools$nsc$interpreter$IMain$$_initialize(IMain.scala:149)
  at scala.tools.nsc.interpreter.IMain.initializeSynchronous(IMain.scala:170)
  at de.sciss.scalainterpreter.CompletionTest$delayedInit$body.apply(CompletionTest.scala:13)

(Scala 2.10.3)

0__

在运行配置中启用“使用替代JRE”时,它似乎工作正常:

在此处输入图片说明

库似乎仍在类路径中找到,调试器不再挂起。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

IntelliJ idea隐藏运行配置

来自分类Dev

在IntelliJ IDEA中运行jar配置

来自分类Dev

IntelliJ IDEA中的tomcat运行配置

来自分类Dev

IntelliJ IDEA 2017.1 运行配置:不选择?

来自分类Dev

Eclipse到IntelliJ IDEA:创建“运行方式”配置

来自分类Dev

Eclipse到IntelliJ IDEA:创建“运行方式”配置

来自分类Dev

如何与IntelliJ IDEA共享(VCS)运行配置模板

来自分类Dev

IntelliJ IDEA / Scala:在类路径上运行配置丢失资源

来自分类Dev

在Intellij IDEA中从TestNG运行测试时的OpenEJB Logger配置

来自分类Dev

Intellij Idea在ubuntu上使用ember.js运行配置

来自分类Dev

IntelliJ IDEA / Scala:在类路径上运行配置丢失资源

来自分类Dev

IntelliJ IDEA 在哪里保存运行/调试配置?

来自分类Dev

IntelliJ IDEA maven运行/调试配置,maven目标运行但app不自动运行

来自分类Dev

如何修复允许IntelliJ IDEA运行Kotlin脚本的权限?

来自分类Dev

在IntelliJ IDEA 14中运行JUnit测试而不选择配置类型

来自分类Dev

在IntelliJ IDEA中使用命令行程序运行配置

来自分类Dev

Intellij IDEA 运行配置系统环境与操作系统环境不匹配

来自分类Dev

选择要运行的配置类型时,请在IntelliJ IDEA 15中运行Gradle测试而不是Junit测试

来自分类Dev

如何使用 Intellij IDEA 配置 Apache tomcat?

来自分类Dev

有没有办法在IntelliJ IDEA中使用单个运行配置来运行多个Spring Boot应用程序?

来自分类Dev

如何在Intellij IDEA中运行Applet?

来自分类Dev

如何让整个项目在 IntelliJ IDEA 中运行?

来自分类Dev

Intellij IDEA插件无法运行

来自分类Dev

IntelliJ IDEA运行AngularJS项目

来自分类Dev

Intellij IDEA插件无法运行

来自分类Dev

如何防止Intellij创建临时运行配置并自动切换到该配置

来自分类Dev

Gradle + Intellij理念:运行配置

来自分类Dev

无法在Intellij IDEA 13中配置Scala

来自分类Dev

Intellij Idea上的Jboss端口配置错误

Related 相关文章

  1. 1

    IntelliJ idea隐藏运行配置

  2. 2

    在IntelliJ IDEA中运行jar配置

  3. 3

    IntelliJ IDEA中的tomcat运行配置

  4. 4

    IntelliJ IDEA 2017.1 运行配置:不选择?

  5. 5

    Eclipse到IntelliJ IDEA:创建“运行方式”配置

  6. 6

    Eclipse到IntelliJ IDEA:创建“运行方式”配置

  7. 7

    如何与IntelliJ IDEA共享(VCS)运行配置模板

  8. 8

    IntelliJ IDEA / Scala:在类路径上运行配置丢失资源

  9. 9

    在Intellij IDEA中从TestNG运行测试时的OpenEJB Logger配置

  10. 10

    Intellij Idea在ubuntu上使用ember.js运行配置

  11. 11

    IntelliJ IDEA / Scala:在类路径上运行配置丢失资源

  12. 12

    IntelliJ IDEA 在哪里保存运行/调试配置?

  13. 13

    IntelliJ IDEA maven运行/调试配置,maven目标运行但app不自动运行

  14. 14

    如何修复允许IntelliJ IDEA运行Kotlin脚本的权限?

  15. 15

    在IntelliJ IDEA 14中运行JUnit测试而不选择配置类型

  16. 16

    在IntelliJ IDEA中使用命令行程序运行配置

  17. 17

    Intellij IDEA 运行配置系统环境与操作系统环境不匹配

  18. 18

    选择要运行的配置类型时,请在IntelliJ IDEA 15中运行Gradle测试而不是Junit测试

  19. 19

    如何使用 Intellij IDEA 配置 Apache tomcat?

  20. 20

    有没有办法在IntelliJ IDEA中使用单个运行配置来运行多个Spring Boot应用程序?

  21. 21

    如何在Intellij IDEA中运行Applet?

  22. 22

    如何让整个项目在 IntelliJ IDEA 中运行?

  23. 23

    Intellij IDEA插件无法运行

  24. 24

    IntelliJ IDEA运行AngularJS项目

  25. 25

    Intellij IDEA插件无法运行

  26. 26

    如何防止Intellij创建临时运行配置并自动切换到该配置

  27. 27

    Gradle + Intellij理念:运行配置

  28. 28

    无法在Intellij IDEA 13中配置Scala

  29. 29

    Intellij Idea上的Jboss端口配置错误

热门标签

归档