【问题标题】:Eclipse rcp build for all platforms (all-in-one)适用于所有平台的 Eclipse rcp 构建(多合一)
【发布时间】:2011-04-03 15:47:07
【问题描述】:

我正在尝试为不同平台(linux、win32 和 mac)构建我的 eclipse (3.6) RCP 应用程序。为此,我需要三个目标平台,而且我还必须在我想要构建它们的平台上构建它们。 所以我得到了三个不同的版本。

是否可以在 linux 机器(或类似配置)上构建 win32 版本,是否可以将所有构建合并为一个(因为唯一改变 afaik 的是启动器和 deltapacks)?

【问题讨论】:

    标签: build eclipse-rcp platform


    【解决方案1】:

    为此,我需要三个目标平台,并且我还必须在我想要为其构建它们的平台上构建它们

    这是不正确的。您需要一个有效的平台目标(在您的构建目标中安装 delta-pack 就足够了),但是在 PDE 的 build.properties 中,您可以指定要构建的平台,例如

    configs = win32, win32, x86 & \
    win32, win32, x86_64 & \
    linux, gtk, x86 & \
    linux, gtk, x86_64 & \
    macosx, carbon, ppc &\
    macosx, cocoa, x86
    

    使用此配置的构建将创建 6 个不同的输出工件。

    是否可以将所有构建合并为一个

    虽然我不明白将不同的构建合并到一个构建中会有什么好处,但 PDE 构建不支持这一点。如果您想将构建输出合并到一个工件中,您可以自己尝试,但我怀疑这是可能的。您的 application.ini 中有对平台相关片段的引用,并且 p2 在配置区域中还保存了特定于平台的数据。此外,您的构建工件(以及用于更新的软件包)的大小会增加(从技术角度来看,这不相关,但从分发或维护角度来看是一个主要缺点)。

    HTH 汤姆

    【讨论】:

    • 非常感谢,我会尽快试用。关于合并:我只想构建一个发行版,而不是每个发行版在我的页面上都有 10 个链接。它应该感觉就像编译一次到处运行;)
    【解决方案2】:

    关于合并构建的想法,我强烈建议您不要这样做。造成这种情况的原因有很多,其中一个是不同平台版本中包含了大量的本地代码,这会大大增加应用程序的大小。此外,RCP 用于启动应用程序的本机启动器无法很好地协同工作。我只是硬着头皮做不同的平台版本。您可以随时尝试在您的网站上确定用户需要哪个版本,但 RCP 不是一次编译,而是在任何地方运行。

    【讨论】:

    • 好吧,另一方面,我的网站上将有 6 个(win、linux 和 macos 32 和 64)版本 à 16MB。在我糟糕的互联网上上传(至少上传)需要一个小时:)
    猜你喜欢
    • 2016-06-29
    • 2011-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-11-07
    相关资源
    最近更新 更多