4

Lars Vogelには、tychoを使用してeclipseプラグインまたはrcpアプリケーションを構築する方法の優れたチュートリアルがあります(http://www.vogella.com/articles/EclipseTycho/article.html)。これはうまくいきますが、私が気に入らないことが2つあります。それはどこかにあり、私の管理下にないリポジトリに対して構築されます

  <repositories>
     <repository>
       <id>juno</id>
       <layout>p2</layout>
       <url>http://download.eclipse.org/releases/juno</url>
     </repository>
  </repositories>

また、アーティファクトを別のビルドで使用する方法は示されていません。可能であれば、ターゲットプラットフォームをホストし、ビルドのデプロイをアップロードする必要があるネクサスリポジトリに対してビルドして、別のビルドがこれをターゲットプラットフォームとして参照できるようにします。

nexus用のp2プラグインと、アーティファクトに移動するために使用できるnexus-unzip-plugin(https://bugs.eclipse.org/bugs/show_bug.cgi?id=393309 )があることを確認しましたが、ネクサスリポジトリに対してEclipseプラグインまたはrcpアプリを構築できるようにするために、これらを組み合わせる方法を理解するのに十分な知識がありません。誰かが私にそれをする方法を教えてもらえますか?

4

2 に答える 2

2

nexus-p2-pluginは必要ありません。p2リポジトリをzipファイルとしてmavenリポジトリにデプロイすると、unzipプラグインを使用できるようになります。構成手順については、wikiページ(http://wiki.eclipse.org/Tycho/Nexus_Unzip_Plugin )を参照してください。ここでいくつかの手順を抽出しました。

  1. リポジトリのクローンを作成します(gitがインストールされていると仮定します)

    git clone git://git.eclipse.org/gitroot/tycho/org.eclipse.tycho.nexus.git

  2. プラグインをビルドします(mavenがインストールされていると仮定します)

    mvnクリーンインストール

--wikiページの「プラグインのデプロイ」を参照してください

  1. ネクサスのインストールを停止します

  2. org.eclipse.tycho.nexus.git/target/unzip-repository-plugin--bundle.jarをsonatype-work/nexus /plugin-repository/に解凍します

  3. ネクサスのインストールを開始します

  4. Wikiページの「解凍リポジトリの構成」を参照してください。

  5. メインリポジトリがパブリックで、public.unzipという仮想unzipリポジトリを作成した場合、デプロイされたp2リポジトリzipは、たとえば次の場所で入手できます。

    http://<NEXUS_HOST>/nexus/content/repositories/public/org/example/demo/org.example.demo.repository/0.1.0/org.example.demo.repository-0.1.0.zip
    

として利用可能である必要があります。

    http://<NEXUS_HOST>/nexus/content/repositories/public.unzip/org/example/demo/org.example.demo.repository/0.1.0/org.example.demo.repository-0.1.0.zip-unzip

そのURLをビルドのp2リポジトリURLとして使用できるはずです。

于 2012-11-23T10:00:27.530 に答える
0

Nexusに対してビルドし、他のユーザーを獲得するには、次のことを行う必要があります。

  1. Nexus P2プラグインをインスタンスにインストールし、使用するリポジトリのアーティファクトの公開をオンにします。
  2. NexusをMavenリポジトリとしてPOMファイルのMavenリポジトリに追加します。これにより、Mavenデプロイを使用してプラグインをアップロードできます。
  3. am eclipse P2リポジトリと同じネクサスを追加して、tychoビルドがプラグインをダウンロードできるようにします
  4. アーティファクトをビルドする(Mavenインストール)
  5. アーティファクトをnexusにデプロイする(mavenデプロイ)
  6. tychoを介して再利用したい人にtychoサーバーのアドレスを提供します。

ノート:

  • TychoビルドはEclipseビルドであり、EclipseビルドはP2リポジトリーで動作します。依存関係の要件に基づいて、Eclipseがリポジトリーから最適なバージョンを選択するため、リモートMavenリポジトリーはサポートできません。これにより、Mavenリポジトリへのトラフィックが失われ、速度が遅くなります。
  • Nexus P2プラグインによって公開されるアーティファクトは、プラグイン(別名OSGIバンドル)のみです。Eclipseには、機能や製品など、ビルドでの再利用に関連する他のアイテムがあります。したがって、誰かがこれらのアイテムを再利用したい場合は、tychoビルドによって生成されたP2リポジトリを別の場所でホストする必要があります。
  • 'deploy'を繰り返し呼び出すと、SNAPSHOTをビルドしている場合、すべてのアーティファクトに新しいマイナーバージョン番号が付けられます。Eclipse(したがってTycho)はスナップショットの概念を知らず、代わりにタイムスタンプ付きのバージョンをデプロイします。これにより、ネクサスがいっぱいになる可能性があります。
于 2012-11-23T04:14:54.403 に答える