代码之家  ›  专栏  ›  技术社区  ›  James Eichele Bernard Igiri

Cocoa框架开发:项目间共享

  •  4
  • James Eichele Bernard Igiri  · 技术社区  · 15 年前

    我目前正在开发一些类似的Cocoa桌面应用程序。为了在它们之间共享代码,我确定了一组核心类和函数,它们可以在所有这些应用程序中通用。我想将这个公共代码捆绑到一个框架中,我当前的所有应用程序(以及将来的任何应用程序)都可以链接到这个框架中。

    现在,这里有一个困难的部分:我将在开发这个框架的过程中,所以我需要我的每个桌面应用程序都有一个对它的引用,但是我希望能够从每个应用程序项目中编辑框架源代码,并根据需要自动重建框架。

    例如,假设我打开了桌面应用程序的Xcode项目,我决定需要更改我的一个框架类。我想:

    1. 打开并编辑该框架类的源文件,而不必在Xcode中打开框架项目。
    2. 点击desktopappumberone上的“构建”,首先看到框架重建(因为它的一个源已经更改),然后看到desktopappumberone重建的部分(因为它链接的一个框架已经更改)。

    我可以看到如何只使用一个应用程序和一个框架来实现这一点,但是我很难理解如何使用共享一个框架的多个应用程序来实现这一点。

    这种方法有没有人成功过?我是不是走错了路?任何帮助都将不胜感激。

    1 回复  |  直到 15 年前
        1
  •  4
  •   hooleyhoop    15 年前

    为您的框架制作一个Xcode项目。

    在“组和文件”面板中,是否看到左上角的蓝色项目图标?将其拖放到您喜欢的任何其他项目的“组和文件”面板中。

    所以,创建一个应用程序项目,并从框架项目中拖入项目图标。

    Cmd-I在你的应用程序目标上 . 在这里,您设置了对框架的依赖性并针对它进行链接。

    几点

    将多个应用程序链接到一个框架可能会带来压力。您需要将您的框架安装到/library/frameworks或等效软件中,或者捆绑到每个应用程序中。

    为了开发的目的,我发现为每个项目设置一个自定义的、通用的构建目录可以简化事情。我设置每个项目 /代码/生成/调试 . 这意味着调试构建的框架搜索路径可以是$configuration_build_dir。对于您的发布版本,您仍将有一些安装路径、rpaths等方面的工作要做,这真让人头疼!

    Xconfig文件是您的朋友。开源的GoogleMac工具箱就是如何使用它们的一个很好的例子。你可能至少需要一个 项目_debug.xconfig , 项目_release.xconfig , 目标_Framework.xconfig , 目标_application.xconfig .