【问题标题】:Why does executing debug in 0.13.7 fail with "Could not find agent library jdwp:transport on the library path"?为什么在 0.13.7 中执行调试失败并显示“在库路径上找不到代理库 jdwp:transport”?
【发布时间】:2014-11-28 12:34:08
【问题描述】:

0.13.6 更新到0.13.7 后,我无法使用SBT 进行调试。 它是使用Homebrew 安装的。我尝试重新安装它,brew doctor 什么也没显示。 我没有在SBT 更新之间更改/重新安装Java

lgr$ sbt -v -jvm-debug 5005 "project webapp" run
[process_args] java_version = '1.8.0_25'
# Executing command line:
java
-Xms1024m
-Xmx1024m
-XX:ReservedCodeCacheSize=128m
-XX:MaxMetaspaceSize=256m
-agentlib:jdwp:transport=dt_socket,server=y,suspend=n,address=5005
-jar
/usr/local/Cellar/sbt/0.13.7/libexec/sbt-launch.jar
"project webapp"
run

Error occurred during initialization of VM
Could not find agent library jdwp:transport on the library path, with error: dlopen(libjdwp:transport.dylib, 1): image not found

我不确定SBT 是否缺少某些库,或者brew 公式没有正确安装。 对于如何解决它的任何想法,我都会有所帮助。

重新安装Java,没有帮助。

解决方法 我下载了SBT 0.13.6,它运行没有问题,所以我开始认为这是一个 sbt 错误。任何人都可以帮忙澄清一下吗?

【问题讨论】:

  • 使用自制软件安装 sbt 0.13.7 时遇到同样的问题。但是,在 homebrew 0.13.8 上更新到最新版本后,问题就解决了:-)

标签: debugging sbt


【解决方案1】:

要搭载 Eugene 上面的答案,因为修复是在 bash 脚本中,所以手动应用来自 https://github.com/sbt/sbt-launcher-package/pull/85/files 的修复非常容易。只需编辑 bin/sbt-launch-lib.bash 即可:

addJava "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=$1"

而不是这个:

addJava "-agentlib:jdwp:transport=dt_socket,server=y,suspend=n,address=$1"

(注意:jdwptransport 之间的=)。

【讨论】:

    【解决方案2】:

    它是使用 Homebrew 安装的。

    Homebrew 安装已被 sbt 项目认可为在 Mac 上安装的推荐方式,但我们(我是 sbt 开发人员之一)目前无法控制它。但是我们确实有官方包sbt/sbt-launcher-package,最后我检查了Homebrew is also using it

    查看脚本相关部分的git blame,似乎调试选项在sbt/sbt-launcher-package#83 中已“修复”:

    在 sbt-launch-lib.bash 中,-Xdebug 选项用于调试。对于 Java 5+,我们应该使用 -agentlib 选项。

    也许您的问题应该作为 sbt/sbt-launcher-package 中的错误进行跟踪。

    【讨论】:

    【解决方案3】:

    该问题在 0.13.8 版本中已修复。

    【讨论】:

      【解决方案4】:

      在我的情况下,bash 修复没有帮助,只能从 bash 运行:

      export SBT_OPTS="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005" 
      sbt
      

      帮助。来自here

      【讨论】:

        猜你喜欢
        • 2021-07-08
        • 2022-09-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-07-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多