0


1

Eclipseインフラストラクチャーの理解が不完全なため、私は1つ問題を抱えています。 歴史的に私達は私達の構築手順に一つの醜いことがあります。 次のようになります。eclipseがワークスペース全体を構築した後、プラグインのローカル構築には1つの不完全なことがあります。 特別なプラグインテストの実行中に現在構築されているデータファイルです(実際には何もテストされませんが、必要なデータの生成は行われます)。 ワークスペースの変更後にそのテストを実行する必要はありません。 実際には、ごくまれにしか触れられていないコード部分の変更後にのみ必要です。 しかし、コードのその部分に変更が加えられると、その特別なデータファイルを更新する前にビルドは使用できなくなります。 そのファイルは現在ではCVSに保存されているので、ローカルでしか作成できませんが、製品のビルドには必要です。 このプラグインテストがワークスペースのビルド手順中に実行されるようにビルド手順を変更したいので、手動で実行する必要はありません。 私はorg.eclipse.test / library.xmlからのテンプレートを使用してそのテストを実行するantファイルを書き込もうとしましたが、プラグインはロードされませんでした。 なぜこれが起こるのか私にはわかりませんが、私のEclipseの作業コピーにテストプラグインが存在しないために起こる可能性があるのではないかと思います。 私はバッチモードでプラグインテストを実行することについてのいくつかの記事を読みました、しかしそれらは開発されたプラグインをテストするために別々のeclipseコピーの必要性についての私の気持ちを強めるだけです。 私たちはプラグインビルドにantを使用しており、これらのスクリプトの全体構造は非常に複雑であるため、トップレベルでビルド手順をグローバルに変更することは不可能になると思います。 自分の仕事を終わらせるためにはどのオプションがありますか。 たぶん、誰かがすでに同じような経験をしているかもしれません…

注意してください、実際に私はいくつかの特別なEclipseアプリケーションを支持してそのテストを取り除きたいのですが、私は私の問題がプラグインテストを実行することより一般的であると信じているので、今は重要ではないと思います。

2 Answer


0


私は、あなたがいくつかのソースファイルを持っていて、それが変更されたとき、データファイルの再構築を強制すると思います。 その再構築はいくぶん遅いので、あなたはそれをいつもやりたくない。

私はこれを次のように攻撃したいと思います。データファイルが依存するすべてのコードを単一のプロジェクトに移動します。 データファイルを構築するANTスクリプトを書きます。 そのANTスクリプトをカスタムビルダーとしてプロジェクトに追加し(プロジェクトのプロパティを開いてから[ビルダー]をクリックします)、プロジェクトを変更するたびにスクリプトを実行します。 入力ファイルの1つを保存するだけで、データファイルは最新の状態に保たれます。


0


ANTスクリプトは次のようになります。

path = $ {extension_dir}

このスクリプトは "eclipse-home"、 "os"、 "ws"、 "arch"パラメータによってパラメータ化されるべきです。 最初のものはスレーブEclipseインスタンスへのパスで、最後の3つは実行中のプラットフォームに一致させるために使用されるプロパティです。 ローカルビルドでは、それぞれosgi.os、ogsi.ws、およびosgi.archの値を持つことができます。