2012-07-22 2 views
2

처음으로 tomcat을 사용하고 있습니다. 나는 tomcat 7.0.28을 다운로드하고 압축을 푼다. ./startup.sh 및 ./shutdown.sh 명령 프롬프트를 시작하고 종료 할 수 있습니다. 지금까지 잘 작동합니다. 나는 브라우저에서 Tomcat 홈페이지와 예제를 볼 수 있습니다.우분투의 jar 파일에서 tomcat을 시작합니다.

하지만 내가 원하는 것은 java 프로파일 러로 tomcat 서버를 프로파일 링하는 것입니다. jar 파일에서 실행하고 싶습니다. java -jar tomcat_allrequiredclasses.jar과 같은 것입니다. 이렇게 바람둥이 서버를 시작할 수있는 방법이 있습니까? bin 디렉토리에있는 tomcat 파일을 jar 파일로 실행하려고 시도했지만 classNotdefined 예외를주었습니다. 당신은 "임베디드 톰캣"를 사용하고 자신의 출시를 작성하려고하지 않는

+0

대신 JDK에서 JVisualVM으로 연결하십시오. 이를 통해 특별한 호출 부두없이 실행중인 프로그램을 프로파일 링 할 수 있습니다. –

답변

1

Tomcat이 JVM 출시에 설정되는 그런 시스템의 특성과 많은 것들을 필요로 .. 감사합니다, 그래서 스크립트가 필요합니다 드라이버 Tomcat's embedded driver을 사용하십시오.

저는 프로파일 러를 부착하기에는 과잉이라고 생각합니다. 대부분의 프로파일 러에는 -agentpath 명령 줄 옵션을 사용하여 JVM 시작시 연결할 수 있도록 구성 할 수있는 JVM "에이전트"가 있습니다.

CATALINA_OPTS="-agentpath:/path/to/yourkit/libyjpagent.so=${yourkit.options}" 
$CATALINA_HOME/bin/startup.sh 

은 일반적인 방법으로 Tomcat을 시작합니다,하지만 당신은 다음 나중에 그것을 첨부 할 수 있도록 JVM 프로파일 러 에이전트를 포함 : 나는 예를 들어, YourKit 자바 프로파일 러를 연결하는 방법입니다.

업데이트

당신은이 작업을 수행 할 수 OP의 예를 포함합니다 : 나는 가능하면 (예를 들어 lib/jborat-agent.jar를 사용하지 않는 완전한 경로를 사용하는 것이 좋습니다

$ export CATALINA_OPTS="-javaagent:lib/jborat-agent.jar -Xss256m -Xms256m \ -Dch.usi.dag.jborat.exclusionList="conf/exclusion.lst" \ -Dch.usi.dag.jp2.dumpers="ch.usi.dag.jp2.dump.xml.XmlDumper" \ -Xbootclasspath/p:./lib/Thread_JP2.jar:lib/jborat-runtime.jar:lib/jp2-runtime.ja‌​r" 
$ $CATALINA_HOME/bin/startup.sh 

을 - 추가 전체 경로). -Xss256M를 사용하여, 당신은 스레드 스택 크기 256M에 아니라 힙 크기를 설정하는

참고. -Xmx256M을 사용하여 힙의 최대 크기를 설정하려는 것으로 의심됩니다.

+0

안녕하세요. Christopher, 답변 해 주셔서 감사합니다. 내 자바 프로파일 러에는 JVM 에이전트도 들어있다. 나는 run.sh라고하는 스크립트 파일로 내 프로파일 러를 실행 중입니다. 다음과 같이 표시됩니다. java -Xss256m -Xms256m -javaagent : lib/jborat-agent.jar \ -Dch.usi.dag.jborat.exclusionList = "conf/exclusion.lst"\ -Dch.usi.dag.jp2. dumpers = "ch.usi.dag.jp2.dump.xml.XmlDumper"\ -Xbootclasspath/p : ./ lib/Thread_JP2.jar : lib/jborat-runtime.jar : lib/jp2-runtime.jar $ * 그래서 if 이걸 가지고 바람둥이를 달리고 싶어요. 제 뛰기에 정확히 무엇을 넣어야하는지 말해 주시겠습니까? – user523956

+0

자신의'run.sh' 사용을 중단하고'export CATALINA_OPTS = ...'행을 포함하는'bin/setenv.sh' (이것을 생성해야 할 수도 있음)를 사용해야합니다. 그런 다음'bin/startup.sh'을 실행하면 시스템 속성이 JVM 시작 명령에 추가됩니다. 'run.sh' 스크립트가 존재할 이유는 없습니다. –

관련 문제