0

現在、既存のプロジェクトを拡張しようとしています。残念ながら、私は叢に完全に慣れていません。私は非常に春に偏っているので、アプローチが完全に間違っている場合は教えてください。

私がやりたいことを説明しましょう:

既存のプロジェクトには、役割「B」の要件「propertyB」を持つ役割「A」(Implementation DefaultA) を持つコンポーネントがあります。同じ components.xml に、ロール「B」(Implementation DefaultB) のコンポーネントがあります。これは通常、DefaultA の propertyB プロパティに自動的に挿入されます。ここまでは順調ですね。

ここで、別の jar によって提供されるロール「B」(Implementation SpecialB) のコンポーネントを作成し、「DefaultB」のデフォルトの実装をオーバーライドしたいと考えています。

これは可能ですか? はいの場合...どのように行われますか?

私が実際にやろうとしているのは、Flexmojos Maven プラグインの一部として ModelValidator を作成することです。これは、Maven 3 の DefaulModelValidator 実装をオーバーライドする必要があります。

クリス

4

1 に答える 1

0

わかりました...解決策は実際には非常に簡単です。同じロール定義で同じインターフェースを拡張するコンポーネントを定義し、そのコンポーネントを含む jar を MAVEN_HOME/lib/ext ディレクトリに配置するだけで、デフォルトの代わりにそのコンポーネントが使用されます。

これを文書化し、私の会社の合流点にサンプルのmaven-projectをアップロードしました: https://dev.c-ware.de/confluence/display/PUBLIC/Flexmojos+in+Continuous+Integration+Builds

クリス

于 2011-11-08T16:12:52.957 に答える