我正在尝试将 jrebel 与 SBT 项目集成。以下条目位于 build.scala 文件中:
javaOptions ++= Seq("-javaagent:/path/to/jrebel.jar", "-Drebel.log=true", "-Drebel.log.file=/path/to/jrebel.log")
但是,当 SBT 启动时(或者,就这一点而言,当文件更新时),我没有看到任何 Jrebel 输出,因此我想知道是否有一个 SBT 命令/开关可用于显示SBT 发出的确切 java 命令? (也许这是版本控制格式的差异?我使用的是 SBT 版本 0.12.2)
最佳答案
你做了一些奇怪的事情。
如果您希望将 jrebel 添加到 SBT,则必须将 javaagent 参数添加到调用 sbt-launch.jar 的命令中,同时不要忘记属性文件。 ???你的Build.scala这么大?难以置信。
如果您要将 jrebel 添加到 Scala 应用程序,那么 SBT 根本超出范围。只要在某个地方启动你的应用程序,它就会重新加载重新编译的类。您只需指定编译的类文件所在的位置。然后使用 sbt > ~package-bin。它就像 maven、ant 或任何其他构建系统。
恕我直言,javaOptions 仅影响派生 jvm 的特定任务 - 例如编译、测试等。
关于java - 查看 SBT 发出的确切 java 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16473259/