Apache tomcat सर्वर के लिए कमांड प्रॉम्प्ट से डिबग मोड कैसे शुरू करें?


84

मैं अपने आवेदन के लिए डिबग मोड शुरू करना चाहता हूं। लेकिन मुझे कमांड प्रॉम्प्ट से डिबग मोड शुरू करने की आवश्यकता है। क्या यह संभव है ? और क्या प्रक्रिया टॉमकैट 5.5 से टॉमकैट 6. के बीच भिन्न होगी?


6
catalina.bat jpda start
sanbhat

जवाबों:


119
खिड़कियों पर
$ catalina.bat jpda start
लिनक्स / यूनिक्स पर
$ catalina.sh jpda start

अधिक जानकारी ----> https://cwiki.apache.org/confluence/display/TOMCAT/Developing


धन्यवाद, इससे मुझे डिबग विकल्प को सेटअप करने में मदद मिली startup.sh। में अंतिम पंक्ति का संपादन tomcat/bin/startup.shकरने के लिए exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@"। मैं हमेशा डिबग मोड में शुरू करना भूल जाता हूं और मैं 5 मिनट के पुनरारंभ को बचा सकता हूं।
टॉमसज।

51

विंडोज़ के लिए पहले चर सेट करें:

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। मेरा दिन बचाया
जोगिंदर मलिक ने

25
  1. अपने आईडीई से, एक दूरस्थ डिबग कॉन्फ़िगरेशन बनाएं, इसे डिफ़ॉल्ट JPDA टॉमकैट पोर्ट के लिए कॉन्फ़िगर करें जो पोर्ट 8000 है।

  2. कमांड लाइन से:

    लिनक्स:

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

    खिड़कियाँ:

    cd apache-tomcat\bin
    set JPDA_SUSPEND=y
    catalina.bat jpda run
    
  3. अपने आईडीई से दूरस्थ डिबग कॉन्फ़िगरेशन को निष्पादित करें, और टॉमकैट चलना शुरू हो जाएगा और अब आप आईडीई में ब्रेकपॉइंट सेट करने में सक्षम हैं।

ध्यान दें:

JPDA_SUSPEND=yलाइन वैकल्पिक है, यह उपयोगी है अगर आप चाहते हैं कि अपाचे बिलाव इसके निष्पादन शुरू नहीं करता है जब तक चरण 3 पूरा हो गया है, उपयोगी यदि आप समस्या निवारण आवेदन प्रारंभ मुद्दों करना चाहते हैं।


14

JVM शुरू होने पर निम्न विकल्पों को जोड़ना है।

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

JAVA_OPTS -Xdebug का उपयोग करते समय आपको जेपीडा के साथ कैटलिना शुरू करने की आवश्यकता नहीं है। अन्यथा आप इसे खत्म कर सकते हैंERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
लंरसिम्हन

4

सबसे पहले, TOMCAT-HOME/binनिर्देशिका पर नेविगेट करें ।

फिर, कमांड-लाइन में निम्नलिखित को निष्पादित करें:

catalina.bat jpda start

यदि टॉमकैट सर्वर लिनक्स के तहत चल रहा है, तो बस catalina.shप्रोग्राम को लागू करें

catalina.sh jpda start

यह Tomcat 5.5 और Tomcat 6 के लिए समान है


क्या आप मुझे टॉमकैट 7.0 के बराबर बता सकते हैं?
आरएएस

3

ये निर्देश मेरे लिए apache-tomcat-8.5.20 पर mac os 10.13.3 पर jdk1.8.0_152 का उपयोग करके काम किया:

$ 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

यदि आप इसे विंडोज़ पर पावरशेल के माध्यम से करना चाहते हैं तो यह मेरे लिए काम करता है

$ Env: JPDA_SUSPEND = "वाई"

$ Env: JPDA_TRANSPORT = "dt_socket"

/path/to/tomcat/bin/catalina.bat jpda प्रारंभ


0

अंदर कैटिना.बट ने वह पोर्ट सेट किया जिस पर आप डिबगर शुरू करना चाहते हैं

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

तो आप बस के साथ डिबगर शुरू कर सकते हैं

catalina.bat jpda 

अब ग्रहण या IDEA से दूरस्थ डिबगिंग का चयन करें और पोर्ट 9001 से कनेक्ट करके डीबगिंग प्रारंभ करें।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.