下载Eclipse插件更新站点以进行脱机安装

Chr*_*eng 74 eclipse installation plugins

我要安装的插件提供了安装的更新站点.但是,我要将其安装到的Eclipse安装位于未连接到Internet的计算机上.有没有办法让我访问该站点(HTTP,FTP等)下载其中的文件以进行离线安装?

Rob*_*anu 58

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
Run Code Online (Sandbox Code Playgroud)

参考: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
Run Code Online (Sandbox Code Playgroud)

参考:从命令行运行更新管理器

您可以在我的脚本存储库中跟踪这些脚本的演变.


Ant*_*ton 11

经过一段时间的镜像挣扎后,我意识到使用"wget"会更容易(至少对我而言).

简而言之:

  1. 下载网站:

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

  2. 获取下载的更新站点的内容并将其移至脱机环境

  3. 通过"本地..."按钮将您的脱机更新站点目录添加到可用软件站点列表中.

您可以在此处阅读更多详细信息.


Vin*_*lds 9

通过将更新站点上可用的必需JAR复制到Eclipse安装的插件和功能目录中,可以在没有Eclipse更新程序的情况下安装大多数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:这种方法有点hackish,但它基于站点地图参考.但请参阅更新

更新

我没有尝试过这个,但你可以创建一个本地镜像站点,其他人都可以从这里获取Eclipse插件.在Galileo中,可以通过mirror命令在独立模式下运行Eclipse更新程序来完成此操作.


小智 5

您可以使用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>
Run Code Online (Sandbox Code Playgroud)

或者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>
Run Code Online (Sandbox Code Playgroud)

为了使其工作,您必须在与eclipse相同的JVM中运行ant任务.

您可以通过打开"软件更新"找到IU ID:s并从那里复制它.在Eclipse 3.5中应该有一个More ...按钮,在3.4中你必须单击属性按钮.


小智 5

我刚刚遇到这个问题并按照本指南中的说明解决了它。总之,在终端上的 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/桌面

将文件夹传输到没有互联网连接的计算机。然后,启动 Eclipse -> 帮助 > 安装新软件。指定安装的本地存储库(即您刚刚传输的文件夹)。那应该有效。