VisualVMでアプリケーションの起動をプロファイルする方法
質問
私の知る限り、 VisualVMを使用して実行中のアプリケーションのみをプロファイルできます.
VisualVMを使用してJavaアプリケーションの起動と起動をプロファイルする方法を知っている人はいますか?
私は道がなければならないと確信しています、さもなければそれは大きな監視になるでしょう。
ドキュメントを誤解したことを願っています。
ありがとう、p。
解決
`-xrunjdwp"コマンドラインオプションを使用してプロファイリングを設定していますか?もしそうなら、そのオプションには 「一時停止」パラメーター ただこの目的のために:
ターゲットVMがメインクラスがロードされる直前に停止される場合はtrue。それ以外の場合。
自分の構成からの例:
-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
私はこれをyourkitプロファイラーで使用しますが、原則は同じだと思います。
他のヒント
Eclipse Launcherを使用し、メインメソッドの適切な場所にブレークポイントを設定します。
次に、デバッグモードで起動し、VisualVMでプロファイリングを有効にしてから、Eclipseを使用して再開します。
クラスの読み込みやものをプロファイルすることはありませんが、私にとっては十分です。
私は見つけました スタートアッププロファイラー 役に立った:
VisualVM 1.3.6のStartup Profilerプラグインを、スタートアップからローカルJava 5+アプリケーションの機器プロファイリングを有効にします。また、短期間のプロセスをプロファイリングするときにも役立ちます。
両方の一般的なJava開発環境(NetBeans/Eclipse)は、添付のVisualVMと直接アプリケーションの実行をサポートします。日食の場合、aをインストールする必要があります プラグイン. 。 NetBeansの場合、サポートはすでに統合されています。
ソースがない場合でも、両方の環境を介してJARファイルを実行できるため、VisualVMに接続されたアプリを起動できます。