2012-03-05 15 views
2

問題があります。 TomcatをJPDAモードで起動した後、実行します。Maven + Tomcat + Eclipse Java hotswap

mvn tomcat:stop tomcat:undeploy war:inplace tomcat:inplace 

その後、EclipseからリモートJavaアプリケーションに接続します。すべての作品は大丈夫です、私はいくつかのコードとホットスワップの動作を変更することができます。

私はメソッド/変更パラメータを追加すると、私はアプリを再デプロイ:スペースを置く、私は再びリモートJavaアプリに再接続したときに、今だけ私は例えば任意のファイルを(変更

mvn tomcat:stop tomcat:undeploy war:inplace tomcat:inplace 

れた後のかスペースの削除、保存)コードをスワップアウトできないというエラーが表示されます - "Hot Code Replace Failed - add method not implemented"

何が問題ですか?

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

+0

は、コンパイラがこの問題を解決しているので、plexus-compiler-eclipseを選択したようです。私はそれをテストしています。 –

答えて

0

JVMはメソッド本体の変更にのみホットスワップをサポートします。パラメータの変更や新しいメソッドの追加など、その他の変更については、これらをサポートするJRebelを選択することを検討してください。

0

Spring Loaded JVMエージェントがうまくいくはずです。 1つは、現在のJVMホットコードの置き換えに欠けている新しいパラメータとメソッドの機能です。私は最近、このセットアップを得て、既存のクラスの新しいメソッドが期待通りに機能することを確認しました。