我在ubuntu 10下以远程调试模式设置Tomcat变得疯狂.基本上我将它添加到/etc/init.d/tomcat6(开头):
JAVA_OPTS="-Djava.awt.headless=true -Xmx256M -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"
但我认为没有效果……实际上我看不到端口8000使用netstat -a打开,Eclipse远程调试器说它无法连接.如果我做ps -A u | grep java我得到:
tomcat6 9612 3.1 13.1 470560 154168 ? Sl 15:24 0:17 /usr/lib/jvm/java-6-sun/bin/java -Djava.util.logging.config.file=/var/lib/tomcat6/conf/logging.properties -Djava.awt.headless=true -Xmx128m -XX:+UseConcMarkSweepGC -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.endorsed.dirs=/usr/share/tomcat6/endorsed -classpath /usr/share/tomcat6/bin/bootstrap.jar -Dcatalina.base=/var/lib/tomcat6 -Dcatalina.home=/usr/share/tomcat6 -Djava.io.tmpdir=/tmp/tomcat6-tmp org.apache.catalina.startup.Bootstrap start
请注意,它甚至没有设置堆大小(如果这是有意义的).
那有什么提示吗?
不要触摸init脚本.而是编辑/ etc / default / tomcat6文件并注释掉在那里启用远程调试的行:
# To enable remote debugging uncomment the following line. # You will then be able to use a java debugger on port 8000. JAVA_OPTS="${JAVA_OPTS} -Xdebug -Xrunjdwp:transport=dt_socket,suspend=n"