0

RCPアプリケーションを最初からワークスペースにマテリアライズしようとしていますが、SVNのプロジェクト名がプラグインIDと同じではない単一のコンポーネント(たとえば、Bundle-SymbolicName)で問題が発生しています。

現時点では、プロジェクトまたはバンドルIDの名前を変更してもこの問題を修正できないため、プロバイダーuri宣言内でコンポーネント名をsvnプロジェクト名に置き換える方法を探しています。

replaceタグを使用しようとしましたが、役に立たないようです。

<provider readerType="svn" componentTypes="eclipse.feature,osgi.bundle" source="true">
  <uri format="https://svnserver/svn/trunk/project/{0}?moduleAfterTag&amp;moduleAfterBranch">
    <bc:replace>
      <bc:propertyRef key="buckminster.component" />
      <bc:match pattern="^com\.initec\.richedit(?:\.\w+)*$"
                replacement="com.initec.richtext$1" />
    </bc:replace>
  </uri>
</provider>

ところで-私はEclipse3.5でBuckminster1.1.350.r10382を使用しています

4

2 に答える 2

1

正規表現が問題のようです。

(?:X)は非キャプチャ グループであるため、$1は定義されません。

私は提案します:

<bc:match pattern="^com\.initec\.richedit((?:.\w+)*)$"
          replacement="com.initec.richtext$1" />
于 2009-07-03T16:20:11.370 に答える
0
pattern="^com\.initec\.richedit(\.\w+)*$"
于 2009-07-04T19:03:11.527 に答える