13

これは、Eclipseプラグインを作成する最初の試みです。機能と更新サイトとともに作成しました。ターゲットプラットフォームをローカルのEclipseインストールとして設定しました。開発環境内からプラグインを実行/デバッグすると、すべてが正常に機能します。

今、私の同僚は、私がホストした更新サイトからプラグインをインストールしました。彼が私のプラグインによって公開されている機能のいずれかを使い始めると、ランタイム例外が発生します。

  1. 彼は、開発環境からプラグインプロジェクトを実行したときに発生しなかったnullポインター例外を確認します。
  2. プラグインの一部であるウィザードがあります。彼がそれを閉じると、「未処理のイベントループ例外」が発生し、ウィザードは閉じません。開発環境でプラグインを実行/デバッグしているときに、この問題は発生しませんでした。

今では、同じプラグインが本番環境で、開発環境とは異なり、IDEからデバッグしているときに異なる動作をする理由について混乱しています。どちらの場合も、ターゲットプラットフォームは同じEclipseバージョンです。理由は何でしょうか?

また、本番環境でプラグインをデバッグするにはどうすればよいですか?本番環境でプラグインをデバッグするためのリモートデバッグ機能はありますか?どんな提案も本当に役に立ちます!

4

4 に答える 4

19

プラグインをリモート デバッグするには、まずターゲットの Eclipse .ini ファイルにデバッグ引数を追加します。

-vmargs
-Xdebug
-Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=1044

起動する前に。

次に、プラグイン プロジェクトを含むワークスペースで別の Eclipse インスタンスを開きます。Run > Debug Configurations...を開き、 Remote Java Applicationを選択して新しい構成を作成します。

Projectとして、プラグイン プロジェクトを参照して選択します。接続プロパティ (ターゲット Eclipse のホストポート1044) も入力します。

新しく作成したデバッグ構成を起動すると、ローカルでデバッグするのと同じ方法でプラグインをデバッグできます。

于 2012-11-11T10:41:30.540 に答える
2

同じプラグインが開発環境と IDE からデバッグしていたときのように、実稼働環境で異なる動作をしている理由について、私は混乱しています。どちらの場合も、ターゲット プラットフォームは同じ Eclipse バージョンです。理由は何ですか?

これは典型的な例です。Eclipse プラグインと RCP アプリケーションは、PDT (Eclipse IDE) とエクスポートされた製品との間で実際に異なる動作をします。

あなたの場合、Eclipse からではなくエクスポートされたバージョンからスローされた NullPointerException は、コードによってロードされたが、あなたの build.properties にリストされていないイメージまたはその他のリソース ファイル (プロパティなど) の 10 分の 9 です。プラグイン。

とにかく、ログをチェックしてスタック トレースを取得し、その原因を突き止める必要があります。このようなログは、友人のワークスペースの.metadata/.logファイルの下にあります。

于 2012-11-11T12:33:10.910 に答える
0

From your development workspace as it stands now, use the "Debug As -> Eclipse Application" menu item to startup a test workspace. When it starts up, you'll have two workspaces running: the original development workspace and the new test workspace. You can set breakpoints in your plugin code in the development workspace and run your plugin in the test workspace.

When your plugin execution in the test workspace gets to one of your breakpoints, execution will pause and you can use the Debug view in your development workspace to look at variables, set more breakpoints or anything else you want to do to debuf your plugin.

于 2012-11-10T18:18:42.947 に答える
0

Eclipse で開発するための Apache Wiki を参照してください。

TomcatがWindowsサービスとして実行されているWindows 10の下で、私は始めました:

tomcat8.5\bin\Tomcat8w.exe

リモート デバッグを有効にするために、 Java オプションの最初のエントリとしてJavaタブに & を追加しました。

-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n

于 2017-11-09T13:06:13.870 に答える