Я схожу с ума, настраивая Tomcat в режиме удаленной отладки под ubuntu 10. В основном я добавил это в /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
Обратите внимание, что он даже не устанавливает размер кучи (если это имеет значение).
Так какие намеки?
Не трогайте сценарий инициализации. Вместо этого отредактируйте / и т.д. / по умолчанию / 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,address=8000,server=y,suspend=n"