web-dev-qa-db-ja.com

Eclipse WTP vs sydeo、「公開せずにモジュールを提供する」

Eclipseの統合プラグインWTPを使用して、プラグインsysdeoのパフォーマンスを見つけるのに問題があります。

移行と比較を行うために、Eclipse内の別々のプロジェクトに両方をインストールしました。

私が理解したことによると、生産性の違いに気づきました。WTPは、Tomcatがソースを配置できるように、ディレクトリビルドでソースを公開する必要があります。この「プル」は長いです。変更が表示されるように、コンテキストを再充電する必要があります。 (ほとんどの庭で5乾燥15秒-最長で20秒)。

Sysdeo no;その結果、ファイルによって変更が加えられるとすぐに、Eclipseがプロジェクトの内部でビルドするディレクトリのターゲットになり、Eclipseビルドとこれらの変更がすぐに利用可能になります(ブラウザのF5で、すぐに結果が得られます)。

サーバーの構成は次のとおりです。

「公開せずにモジュールを提供する」オプションを使用すると、sydeoを正確に作成できます。実行中のプロジェクトのビルドディレクトリを選択できます。この構成は、コンテキストのファイルで自分自身を表現します。 (「公開はXML行を分離するためにコンテキストを変調する」をチェックしたことを取り戻すことができるようにするためです)

これらのファイルの比較:

  • これがsysdeoによって生成されるコンテキストのファイルです
< Context path="/tatoile _syseo" reloadable="false" docBase="D:\32bit\serveur32bit\workspace\tatoile _syseo" workDir="D:\32bit\serveur32bit\workspace\tatoile _syseo\work" />
  • WTPによって生成されるファイルコンテキスト

<?xml version = "1.0" encoding = "UTF-8"?> <Context docBase = "D:\ 32bit\serveur32bit \ワークスペース\ tatoile\web" path = "/ tatoile" reloadable = "true" source = "org .Eclipse.jst.jee.server:tatoile "> <リソースclassName =" org.Eclipse.jst.server.Tomcat.loader.WtpDirContext "extraResourcePaths ="/WEB-INF/classes | D:\ 32bit\serveur32bit\workspace\tatoile\build\classes "virtualClasspath =" D:\ 32bit\serveur32bit\workspace\tatoile\build\classes "/> <ローダーclassName =" org.Eclipse.jst.server.Tomcat.loader.WtpWebappLoader "useSystemClassLoaderAsParent =" false " virtualClasspath = "D:\ 32bit\serveur32bit \ワークスペース\ tatoile\build\classes" /> <JarScanner scanAllDirectories = "true" /> </ Context>

後でこれら2つのファイルを分析するのは似ています。

では、問題に戻りましょう。私は同じサーバーを使用しているため、上記のコンテキストの両方のファイルがこのサーバー用に定義されています。経験:プラグインsysdeoによってTomcatを起動します。2つのコンテキストでのロードは、1つはsysdeoによってWTPの方法を構成するためのものになります。両方の当局は同じように反応し、変更はtatoile_syseoとtatoileで即座に行われます。

一方、EclipseでプラグインWTP(タブサーバーなど)を介してTomcatを起動すると、tatoile_syseoプロジェクトとtatoileプロジェクトの両方で変更がすぐに行われるわけではありません。注:変更が考慮されるように、自動リロードは必ず有効にする必要があります。 (サーバーがコンテキストをリロードしたことを示すと、変更を確認できます。)

enter image description here

それから、コンテキストの構成が理由ではなく、プラグインがTomcatを起動する方法であると推測します。そしてそこか私は乾く…

これがWTPプロジェクトです:

enter image description here

103
Vsplit

@Vsplitから引用された答え

この問題は、WTPデプロイメントでMAVENを追加することで解決されました。パフォーマンスの問題はありません...そして公開せずにサーブモジュールをアクティブ化しません

3
Marko

プラグインマーケットプレイスで、m2e-wtpという無料のプラグインを探してください。これにより、提供されたスコープの問題が処理されます。デプロイされていないクラスに関しては、私が見る通常の場所は、デプロイメントアセンブリおよび/またはJavaビルドパスです。エントリ(および依存モジュール)がすべてそこにあり、に配置されていることを確認してください。適切な場所。