0

我正在通过 Eclipse PDE 构建构建我的 Eclipse 插件,即我已经在“custom.xml”中定义了所有必需的目标

但是我不想从存储库中获取我的插件,所以我跳过了这一步。但是,所有插件都必须位于 plugins 目录下,并且所有功能都必须相应地位于 features 文件夹下。这实际上是用地图文件完成的,但我跳过了这一步。所以,我复制我的元素如下:

<target name="init">

     <mkdir dir="${buildDirectory}" />
     <mkdir dir="${buildDirectory}/plugins" />
     <mkdir dir="${buildDirectory}/features" />

     <copy todir="${buildDirectory}/${type}s">
         <fileset dir="${buildDirectory}/../">
         <include name="${id}/**" />
         </fileset>
     </copy>
</target>

<target name="preGenerate">
     <antcall target="allElements">
        <param name="genericTargets" value="${builder}/customTargets.xml"/>
        <param name="target" value="init"/>
     </antcall>
</target>

这很完美!我唯一不喜欢的是在“allElements”目标中我必须指定我拥有的所有插件和功能的集合。我这样做只是为了复制。在元素中仅指定一个“主要”功能就足以完成其余的构建过程。

所以,我的问题是:如何只指定一个“主要”功能而不需要指定其余插件集(已在此功能中列出)来准备 Eclipse 构建过程?或者,可以在没有复制的情况下开始构建?可能,以某种方式指定地图文件?

提前致谢!

4

1 回答 1

0

为什么你有 allElements.xml?PDE 本身会创建一个虚拟功能项目来构建您要求的东西。它是您希望构建的 RCP 应用程序吗?如果是,您可以使用产品配置来调用构建。如果没有,您可以创建一个虚拟根级功能项目并将所有内容添加到其中,生成它的 build.xml 并无头构建它。

您可能想看看这个帖子系列(抱歉无耻地将您转发到我的博客)。

于 2010-09-23T03:10:50.020 回答