2

初めてtomcatを使用しています。tomcat7.0.28をダウンロードして解凍しました。./startup.shおよび./shutdown.shによってコマンドプロンプトから起動およびシャットダウンできます。これまでのところ、正常に動作します。ブラウザでもTomcatのホームページと例を見ることができます。

しかし、私が欲しいのは、JavaプロファイラーでTomcatサーバーをプロファイリングすることです。そのために、jarファイルから実行したいと思います。java-jartomcat_allrequiredclasses.jarのようなもの。このようにTomcatサーバーを起動する方法はありますか?binディレクトリにあるtomcatのjarファイルを実行しようとしましたが、classNotdefined例外が発生しました(試してみるだけです)。

ありがとうございました..

4

1 に答える 1

1

Tomcat は、JVM の起動時に設定する多くのシステム プロパティなどを必要とするため、「組み込み Tomcat」を使用し、Tomcat の組み込みドライバーを使用して独自の起動ドライバーを作成する場合を除き、スクリプトが必要です。

プロファイラーを付けるだけではやり過ぎだと思います。-agentpathほとんどのプロファイラーには、コマンドライン オプションを使用して JVM の起動時にアタッチするように構成できる JVM "エージェント" が付属しています。これは、たとえば、YourKit Java Profiler をアタッチする方法です。

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

これにより、Tomcat が通常の方法で起動されますが、JVM プロファイラー エージェントが含まれているため、後でアタッチできます。

OPの例を含めるように更新

あなたはこれをしたい:

$ 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

可能な限り完全なパスを使用することをお勧めします (たとえば、使用しないでくださいlib/jborat-agent.jar-- 完全なパスを追加してください)。

を使用すると、ヒープ サイズではなく、スレッド スタック サイズ-Xss256Mが 256Mに設定されることに注意してください。ヒープの最大サイズを設定するために使用するつもりだったと思われます。-Xmx256M

于 2012-07-22T13:24:14.680 に答える