web-dev-qa-db-ja.com

オフラインインストール用のEclipseプラグイン更新サイトのダウンロード

インストールするプラグインは、インストール用の更新サイトを提供します。ただし、インストールするEclipseのインストールは、インターネットに接続されていないマシン上にあります。サイト(HTTP、FTPなど)にアクセスして、オフラインインストール用にサイト内のファイルをダウンロードする方法はありますか?

71
Chry Cheng

Eclipseは、コマンドラインまたはAntタスクを介して、これらのサイトを自動的にミラーリングする方法を提供します。

P2情報に基づくミラー

$Eclipse_home/Eclipse -application org.Eclipse.equinox.p2.artifact.repository.mirrorApplication -source $1 -destination $2
$Eclipse_home/Eclipse -application org.Eclipse.equinox.p2.metadata.repository.mirrorApplication -source $1 -destination $2

リファレンス: Equinox p2リポジトリミラーリング

Site.xml情報に基づくミラー

Java -jar $Eclipse_home/plugins/org.Eclipse.equinox.launcher_*.jar -application org.Eclipse.update.core.standaloneUpdate -command mirror -from $from -to $to

リファレンス: コマンドラインからアップデートマネージャを実行する

これらのスクリプトの進化は、私の script repository で確認できます。

57
Robert Munteanu

しばらくミラーリングに苦労した後、代わりに「wget」を使用する方が(少なくとも、私にとっては)はるかに簡単であることに気付きました。

要するに:

  1. サイトをダウンロードします。

    wget --recursive --no-parent http://url.of/updatesite

  2. ダウンロードした更新サイトのコンテンツを取得して、オフライン環境に移動します

  3. [ローカル...]ボタンを使用して、利用可能なソフトウェアサイトのリストにオフライン更新サイトディレクトリを追加します。

詳細については こちら をご覧ください。

11
Anton

ほとんどのEclipseプラグインは、Eclipseアップデータなしで、更新サイトで入手可能な必要なJARをEclipseインストールのプラグインおよび機能ディレクトリにコピーすることでインストールできます。

場合によっては、-cleanスイッチを使用してEclipseを起動する必要があります。

M2Eclipseプラグインでこれを行う方法の例を次に示します。

  1. M2Eclipse更新サイトは http://m2Eclipse.sonatype.org/update です。必要なJARのリストを特定することが最初のステップです。これは通常、site.xmlファイルにあります。この場合、 http://m2Eclipse.sonatype.org/update/site.xml にあります。
  2. 使用するプラグインのバージョンにダウンロードするJARのリストをフィルターします。これは、各「機能」のバージョン属性によって決定できます。運がよければ、JARの説明がカテゴリノードにあります。
  3. ダウンロードする必要がある各JARのurl属性に注意してください。これには、JARが利用可能なサーバー上のサブディレクトリと、それらを配置する必要があるEclipseインストール内のディレクトリが含まれます。

PS:この方法は少しハッキングされていますが、 site-map reference に基づいています。しかし、更新を参照してください

更新

私はこれを試みていませんが、ローカルミラーサイトを作成して、そこから誰もがEclipseプラグインを取得できるようにすることができます。 Galileoでは、ミラーコマンドを使用して スタンドアロンモードでEclipseアップデーター を実行することでこれを実行できます。

9
Vineet Reynolds

Antタスクを使用してp2サイトをミラーリングできます。

<target name="springide">
    <echo>springide</echo> 
    <p2.mirror verbose="true">
        <repository location="${REPO_HOME}/springide" name="springide" append="true"/>
        <source>
            <repository location="http://springide.org/updatesite" />
        </source>
        <iu id="Core / Spring IDE" version="" />
        <iu id="Extensions / Spring IDE" version="" />
        <iu id="Integrations / Spring IDE" version="" />
        <iu id="Resources / Spring IDE" version="" />
    </p2.mirror>
</target>

またはfindbugs:

<target name="findbugs">

<echo>findbugs</echo>
    <p2.mirror verbose="true">
        <repository location="${REPO_HOME}/findbugs" name="findbugs" append="true"/>
        <source>
            <repository location="http://findbugs.cs.umd.edu/Eclipse/" />
        </source>
        <iu id="edu.umd.cs.findbugs.plugin.Eclipse.feature.group" version="" />
    </p2.mirror>
</target>

これが機能するためには、Eclipseと同じJVMでantタスクを実行する必要があります。

IU ID:sを見つけるには、「ソフトウェアの更新」を開いてそこからコピーします。 Eclipse 3.5ではMore ...ボタンがあり、3.4ではプロパティボタンをクリックする必要があります。

5
ILX

一部のサイトでは、p2 mirrorApplicationがうまく機能せず、ミラーリングされた重複アーティファクト(pack200とjarバージョンの両方)が見つかりませんでした。 b3 Aggregatorの動作はずっと良く、更新サイトのカスタマイズがずっと簡単になりました。インストール手順と詳細については、 https://wiki.Eclipse.org/Eclipse_b3/aggregator/manual のマニュアルを参照してください。

私が使用した基本的な手順は次のとおりです。

  • ファイル>新規>その他...> b3>リポジトリ集約。
  • Aggregationノードを選択し、Build Rootを、集約されたリポジトリを保存するフォルダーに設定します。
  • Rを使用して、気にするプラットフォームを追加しますAggregationノード> New Child> Configuration。
  • 1つのValidation Setを追加します。通常はLabelをmainに設定します。
  • メインEclipseリポジトリから追加のバンドルが必要ない場合(つまり: http://download.Eclipse.org/releases/mars )、それをValidation Setに追加できます。 検証リポジトリとしてですが、通常はマッピングリポジトリとして追加する必要がありますコントリビューションの下に依存関係や追加のEclipse機能を追加できますダウンロードされます。
  • プラグインごとに、Labelコントリビューションを追加し、その下にLocationで少なくとも1つのマップリポジトリを追加します。
  • 必要に応じて、カスタムカテゴリノードを集約に追加します。それぞれに固有のDescriptionIdentifier、およびLabelを指定します。
  • 下部のリポジトリブラウザーノードを展開>リポジトリurlを展開>インストール可能ユニットを展開>カテゴリー(存在する場合)および/または機能の下
  • 目的の機能をRクリックして、カスタムカテゴリに追加します(使用している場合)。それ以外の場合は、[マップされた機能]として親にマップされたリポジトリに追加します。
  • 任意のノードを右クリックして、「集計を構築」をクリックします。

重要な注意:特定のリポジトリの機能をマッピングしない場合、そのリポジトリ全体がミラーリングされます(実際にはリポジトリ内のすべてではなく、すべてのバンドルの最新バージョン)。

幸いなことに、除外ルールや有効な構成ルールを台無しにする必要はありませんでした。ただし、リポジトリに依存関係の競合があるバンドルが含まれている場合は、除外ルールが必要になることがあります。その場合、1つ以上の競合するバンドルを除外する必要があります。

B3 Aggregatorは通常、マップしたすべての機能の最新バージョン(および依存関係)のみをダウンロードしますが、新しいバージョンのリリース時にBuild Aggregationを繰り返し使用すると、古いバージョンが集計に蓄積されます。 Clean then Build Aggregationを使用できますが、これはすべてを再ダウンロードする必要があることを意味します。代わりに、別の.b3aggr集計ファイルを追加し、ビルドルートを設定し、構成を追加し、ローカルミラーのfinalディレクトリへのパスを使用して、マップされたリポジトリに1つのコントリビューションを追加します。機能をマッピングしたり、カテゴリを作成したりしないでください。次に、アグリゲーションをビルドすると、ミラーの最新バージョンのみがアグリゲートされます!

3
PolyTekPatrick

通常、Eclipseプラグインは他のプラグインに依存しています。依存関係をトレースするのは少し難しいです。更新サイトを使用してすべての依存関係を一度ダウンロードすると、他のEclipseドロップインに配布できます。 Eclipse 3.4以降では、Eclipseの機能であるドロップインを使用できます。これにより、Eclipseを再インストールするたびに更新サイトからプラグインをインストールする必要がなくなります。読む http://michsan.web.id/content/how-install-Eclipse-plugins-offline

ウェブが見えない場合は、説明をします

外部プラグインのディレクトリを準備する

最愛のプラグインを保持する特別なディレクトリを作成します。/home/ichsan/Eclipse-dropinsにMavenプラグインm2Eclipseをインストールします。

mkdir /home/ichsan/Eclipse-dropins

ここでは、このディレクトリをDROPINSと呼びます

サンドボックスの準備

次に、Gitを使用して、Eclipseサンドボックスを作成します。ポイントは、1つのプラグインを新しいEclipseにインストールすることです。新しいプラグインをインストールするたびに新しいEclipseをインストールする代わりに、Gitを使用して新しいEclipseの新しいブランチを作成した方が良いでしょう。

最初に、ディレクトリに新しいEclipseを抽出/インストールします。/home/ichsan/Eclipse-sandbox(/home/ichsan/Eclipse-sandbox/Eclipse.iniが見つかるように)。このディレクトリをEclipse_SANDBOXと呼びます。

次に、新規インストールをコミットします。このステップは一度だけ実行する必要があります。

cd $Eclipse_SANDBOX
git init
git add .
git commit -am "Fresh Eclipse"

サンドボックスにプラグインをインストール

ここからがおもしろい部分です。 m2Eclipseプラグインをインストールする必要があるとします。これを新しいGitブランチにインストールして、マスターブランチがクリーンなままになるようにします。

cd $Eclipse_SANDBOX
git checkout -b "m2Eclipse"

ここで、Eclipse_SANDBOXのEclipseを起動し、プラグインをダウンロードします。完了したら、Eclipseをシャットダウンし、作成された新しいディレクトリまたはファイルを確認します(Gitを使用)。覚えておいてください、私たちは新しいプラグインと機能のディレクトリとその中身だけを気にします。したがって、残りをドロップインにコピーしません。

# Prepare the m2Eclipse plugin directories
mkdir -p $DROPINS/m2Eclipse/eclipse/plugins
mkdir -p $DROPINS/m2Eclipse/eclipse/features

cd $Eclipse_SANDBOX
for f in $(git status | sed "s/#\t//g" | grep -P "^plugins" ); do cp -R $f $DROPINS/m2Eclipse/eclipse/plugins; done
for f in $(git status | sed "s/#\t//g" | grep -P "^features"); do cp -R $f $DROPINS/m2Eclipse/eclipse/features; done

# Make the directory read only
chmod -R -w $DROPINS/m2Eclipse

# Commit changes
git add .
git add -u
git commit -am "M2Eclipse plugin installed"


# Back to master branch to make Eclipse clean again and ready for other plugin installations
git checkout master
Installing the plugin

DROPINS/m2EclipseのディレクトリをEclipse_HOME/dropinsにコピーするか、シンボリックリンクを作成します。これで完了です!

cd $Eclipse_HOME/dropins ln -s $DROPINS/m2Eclipse

別の方法は、新鮮なEclipseコミットとプラグインインストール後のコミットの違いをバックアップすることです。

for i in `git diff hashFreshEclipse hashPluginInstall --name-only`;do 
  if [ -f $i ]; then
    tar -r -f m2e-Android.tar $i
  fi
done
gzip m2e-Android.tar
2
sancho21

ここから入手できます https://repository.sonatype.org/content/repositories/forge-sites/m2e/1.3.0/N/1.3.0.20121023-1108/

プラグインと機能にドリルダウンするすべてのファイルをダウンロードします。すべてを同じディレクトリ構造に保ちながら、マシンのディレクトリに保存します。開発マシンのフォルダーに移動します。

Eclipseで[ヘルプ]に移動します| Intall New Software ...「Add」ボタンをクリックします「Local ...」ボタンをクリックしますファイルをドロップしたディレクトリを参照します。画面の指示に従ってください。

2
Ian Jones

私はこの問題に直面し、この guide の指示に従うことで解決しました。要約すると、Eclipseフォルダーのターミナルで次のコマンドを実行します。

  1. eclipsec.exe -application org.Eclipse.equinox.p2.metadata.repository.mirrorApplication -source $1 -destination $2

  2. eclipsec.exe -application org.Eclipse.equinox.p2.artifact.repository.mirrorApplication -source $1 -destination $2

どこ$1はオンラインリポジトリへのURLを指し、$2は、ローカルフォルダーへのパスを指します。例えば。 WindowsデスクトップにVrapperをダウンロードするには:

$ 1 = http://vrapper.sourceforge.net/update-site/stable/

$ 2 = C:/ Users/foo/Desktop

インターネットに接続せずにマシンにフォルダを転送します。次に、Eclipse-> Help> Install new softwareを起動します。インストール用のローカルリポジトリ(つまり、転送したフォルダー)を指定します。うまくいくはずです。

1
Zhiyuan-Amos