簡體   English   中英

無法在 IDEA IntelliJ 12 中調試 Java 項目

[英]Can't debug Java project in IDEA IntelliJ 12

在帶有 Tomcat7 和 IDEA IntelliJ 12 的 OSX 上。

運行配置工作正常。 調試配置抱怨:

    /usr/local/Cellar/tomcat/7.0.37/libexec/bin/catalina.sh run
    Error occurred during initialization of VM
    agent library failed to init: jdwp
    ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
    Disconnected from server

我從 11 年找到了這篇文章,但沒有幫助。

關於“一旦我從系統變量中刪除它(在 IDEA 中它是只讀的)問題就被修復了”的注釋是有道理的。 所以我嘗試從 catalina.sh 中刪除整個塊

    if [ -z "$JPDA_OPTS" ]; then
    JPDA_OPTS="-agentlib:jdwp=transport=$JPDA_TRANSPORT,address=$JPDA_ADDRESS,server=y,suspend=$JPDA_SUSPEND"
    fi

沒有幫助。 任何幫助將不勝感激。 謝謝!

java運行命令:

    + eval exec '"/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home/bin/java"' '"-Djava.util.logging.config.file=/Users/ryan/Library/Caches/IntelliJIdea12/tomcat/Unnamed_secure_post_3/conf/logging.properties"' -Xdebug -Xrunjdwp:transport=dt_socket,address=127.0.0.1:65523,suspend=y,server=n -Dcom.sun.management.jmxremote= -Dcom.sun.management.jmxremote.port=1099 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.rmi.server.hostname=127.0.0.1 -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000 -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager '-Djava.endorsed.dirs="/usr/local/Cellar/tomcat/7.0.37/libexec/endorsed"' -classpath '"/usr/local/Cellar/tomcat/7.0.37/libexec/bin/bootstrap.jar:/usr/local/Cellar/tomcat/7.0.37/libexec/bin/tomcat-juli.jar"' '-Dcatalina.base="/Users/ryan/Library/Caches/IntelliJIdea12/tomcat/Unnamed_secure_post_3"' '-Dcatalina.home="/usr/local/Cellar/tomcat/7.0.37/libexec"' '-Djava.io.tmpdir="/usr/local/Cellar/tomcat/7.0.37/libexec/temp"' org.apache.catalina.startup.Bootstrap start

問題是 catalina.sh 正在調用 setenv.sh,它正在像這樣設置 JAVA_OPTS:

    JAVA_OPTS="$JAVA_OPTS -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000"

我不知道這個 setenv.sh 來自哪里,因為同事的 tomcat 自制軟件安裝沒有這個文件。

現在,我已將 IntelliJ 調試配置為使用 catalina_idea_debug.sh,它只是 catalina.sh 的副本減去對 setenv.sh 的調用。 現在工作正常。

IntelliJ 和 JBoss 也有類似的問題。 對我來說,在包含 jdwp 配置的 standalone.conf 中指定了 JAVA_OPTS。 對此進行評論使我能夠從 IntelliJ 進行調試。

也許這有助於其他人搜索這個短語,因為互聯網上沒有太多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM