Apache Tomcat 서버의 명령 프롬프트에서 디버그 모드를 시작하는 방법은 무엇입니까?


답변:


119
창문에서
$ catalina.bat jpda start
Linux / Unix에서
$ catalina.sh jpda start

더 많은 정보 ----> https://cwiki.apache.org/confluence/display/TOMCAT/Developing


감사합니다. 이것은에서 디버그 옵션을 설정하는 데 도움이되었습니다 startup.sh. 의 마지막 줄 tomcat/bin/startup.shexec "$PRGDIR"/"$EXECUTABLE" jpda start "$@". 나는 항상 디버그 모드에서 시작하는 것을 잊고 5 분 재시작을 절약 할 수 있습니다.
TomasZ.

51

Windows의 경우 먼저 변수를 설정하십시오.

set JPDA_ADDRESS=8000
set JPDA_TRANSPORT=dt_socket

디버그 모드에서 서버를 시작하려면 :

%TOMCAT_HOME%/bin/catalina.bat jpda start

유닉스 최초 내보내기 변수의 경우 :

export JPDA_ADDRESS=8000
export JPDA_TRANSPORT=dt_socket

디버그 모드에서 서버를 시작하려면 :

%TOMCAT_HOME%/bin/catalina.sh jpda start

음 예, 8000과 dt_socket이 catalina.bat에서 기본값으로 언급되어 있지만 실제로는 위의 게시물에서와 같이 설정해야합니다. /
hello_earth

요점 대답과 그것은 나를 위해 일했습니다 +1. 내 하루를 구했습니다
Joginder Malik

25
  1. IDE에서 원격 디버그 구성을 만들고 포트 8000 인 기본 JPDA Tomcat 포트에 대해 구성합니다.

  2. 명령 줄에서 :

    리눅스 :

    cd apache-tomcat/bin
    export JPDA_SUSPEND=y
    ./catalina.sh jpda run
    

    Windows :

    cd apache-tomcat\bin
    set JPDA_SUSPEND=y
    catalina.bat jpda run
    
  3. IDE에서 원격 디버그 구성을 실행하면 Tomcat이 실행되기 시작하고 이제 IDE에서 중단 점을 설정할 수 있습니다.

노트 :

JPDA_SUSPEND=y줄은 선택 사항이며 3 단계가 완료 될 때까지 Apache Tomcat이 실행을 시작하지 않도록하려는 경우에 유용하며 응용 프로그램 초기화 문제를 해결하려는 경우에 유용합니다.


14

짧은 대답은 JVM이 시작될 때 다음 옵션을 추가하는 것입니다.

JAVA_OPTS=" $JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8080"

JAVA_OPTS -Xdebug를 사용할 때 jpda로 catalina를 시작할 필요가 없습니다. 그렇지 않으면 당신은 이것으로 끝날 수 있습니다ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
lnarasimhan

4

먼저 TOMCAT-HOME/bin디렉터리로 이동합니다 .

그런 다음 명령 줄에서 다음을 실행합니다.

catalina.bat jpda start

Tomcat 서버가 Linux에서 실행 중이면 catalina.sh프로그램을 호출하십시오.

catalina.sh jpda start

Tomcat 5.5 및 Tomcat 6에서도 동일합니다.


Tomcat 7.0에 해당하는 것을 말씀해 주시겠습니까?
RAS

3

이 지침은 jdk1.8.0_152를 사용하는 mac os 10.13.3의 apache-tomcat-8.5.20에서 저에게 효과적이었습니다.

$ cd /path/to/apache-tomcat-8.5.20/bin
$ export JPDA_ADDRESS="localhost:12321"
$ ./catalina.sh jpda run

이제 IntelliJ / Eclipse에서 포트 12321에 연결하고 원격 디버깅을 즐기십시오.


2

디버그 모드에서 바람둥이를 실행하는 두 가지 방법이 있습니다.

  1. jdpa 실행 사용

  2. JAVA_OPTS 사용

먼저 환경을 설정하십시오. 그런 다음 다음 명령을 사용하여 서버를 시작하십시오.

export JPDA_ADDRESS=8000

export JPDA_TRANSPORT=dt_socket

%TOMCAT_HOME%/bin/catalina.sh jpda start

sudo catalina.sh jpda start

자세한 내용 은이 기사 를 참조하십시오.


1

Windows의 powershell을 통해이 작업을 수행하려면이 작업이 저에게 효과적이었습니다.

$ env : JPDA_SUSPEND = "y"

$ env : JPDA_TRANSPORT = "dt_socket"

/path/to/tomcat/bin/catalina.bat jpda 시작


0

catalina.bat 내부에서 디버거를 시작할 포트를 설정하십시오.

if not "%JPDA_ADDRESS%" == "" goto gotJpdaAddress
set JPDA_ADDRESS=9001

그런 다음 간단히 디버거를 시작할 수 있습니다.

catalina.bat jpda 

이제 Eclipse 또는 IDEA에서 원격 디버깅을 선택하고 포트 9001에 연결하여 디버깅을 시작합니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.