Запустите проект sbt в режиме отладки с пользовательской конфигурацией - PullRequest
8 голосов
/ 12 ноября 2011

Я хочу ввести режим отладки в моем проекте sbt 0.11, используя специальную конфигурацию.Я попытался реализовать это, используя следующий код, но, к сожалению, он не работает должным образом.Я запускаю debug:run, но запуск не приостанавливается, как ожидалось.

object Test extends Build {
  lazy val root = Project("test", file("."))
    .configs( RunDebug )
    .settings( inConfig(RunDebug)(Defaults.configTasks):_*)
    .settings(
      name := "test debug",
      scalaVersion := "2.9.1",
      javaOptions in RunDebug += "-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005",
      fork in RunDebug := true
    )

  lazy val RunDebug = config("debug").extend( Runtime )
}

Ответы [ 3 ]

6 голосов
/ 13 ноября 2011

Хорошо, это работает со следующим:

object Test extends Build {
  lazy val root = Project("test", file("."))
    .configs( RunDebug )
    .settings( inConfig(RunDebug)(Defaults.configTasks):_*)
    .settings(
      name := "test debug",
      scalaVersion := "2.9.1",
      javaOptions in RunDebug ++= Seq("-Xdebug", "-Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"),
      fork in RunDebug := true
    )

  lazy val RunDebug = config("debug").extend( Runtime )
}

теперь я могу запустить свой код в режиме отладки, используя debug:mode.

2 голосов
/ 09 апреля 2013

для простого запуска проекта sbt в режиме отладки, просто выполните

JAVA_OPTS = -Xdebug -Xrunjdwp: transport = dt_socket, server = y, suspend = y, address = 5005

, а затем

sbt run будет запускать SBT в режиме отладки, вы можете создать конфигурацию удаленной отладки в eclipse и подключиться к ней.это довольно неудачно, но полезно, когда у вас есть мультимодульный проект воспроизведения и вы хотите запустить один из модулей в режиме отладки

0 голосов
/ 12 мая 2015

В Intellij IDEA я просто загружаю программу в режиме Dedug, и она, кажется, работает правильно без дальнейшей настройки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...