将 JreEmulation 项目添加到您的 Xcode 项目

J2ObjC 的 JRE 模拟库可以使用 Xcode 构建,并且可以作为子项目包含在您的 Xcode 项目中。这样,您就可以控制用于构建该库的设置,以便您的项目充分利用该库。

下载源代码

执行以下任一操作: - 下载当前源代码包并将其解压缩到本地目录;或 - 使用 git 克隆源代码树。本地源代码签出的优势在于,您可以更轻松地了解最新的 J2ObjC 项目变更,但它需要一些版本控制系统知识。

源代码可以位于本地系统中的任何位置。在本文档中,我们将使用 /usr/local/src/j2objc,但请根据需要更改该路径。

安装 Build Tools

需要安装 Xcode 的命令行工具和 Apache Maven 才能构建 J2ObjC。请参考以下提示:

这些是 Google 搜索,而非静态页面,因为安装方式经常会随新的 Mac OS X 和 Xcode 版本而改变。

构建项目

按照构建 J2ObjC 步骤操作。命令行构建是可选的,但比在 Xcode 中调用时更容易调试。

调试 JRE 时,建议在顶部添加以下几行代码 位于 jre_emul/environment.mk 的 运行干净 build:

DEBUGGING_SYMBOLS=YES
OPTIMIZATION_LEVEL=0

JreEmulation Xcode 项目

在 Xcode 中,打开 /usr/local/src/j2objc/jre_emul/JreEmulation.xcodeproj。该文件夹的文件夹包括:

  • :一组核心 JRE 模拟类,并非通过转换 Java 源文件创建此类类。
  • jre_emul_tests:在 Xcode 中构建并运行的一组单元测试。这些测试不包括翻译后的 JUnit 测试,这些测试是使用 jre_emul 目录中的 make test 从命令行构建并运行的。
  • 转译的类:这些是通过转换 JRE 库的 Java 源文件创建的文件。注意:
  • Xcode 将缺失的文件标记为红色。由于这些文件是在构建期间创建的,因此在项目构建之前,它们最初都将显示为红色。
  • 我们会定期向 JRE 模拟库中添加新类,因此此列表可能已过时。如果是,请右键点击此文件夹,点击“Add Files to JreEmulation.xcodeproj”,然后从 jre_emul/build_result/Classes 及其子目录添加新的 .m.h 文件。

如需构建 JreEmulation 项目,请选择 jre_emul 目标,然后点击 Xcode 的 Run 按钮。如需构建并运行单元测试,请点击 Run 按钮旁边的向下箭头,然后选择 Test

将 JreEmulation 项目添加到您的项目中

  • 在左侧的 Project Naviagator 面板中,右键点击您的项目,然后选择“Add Files to Project Name”。
  • 找到 jre_emul/JreEmulation.xcodeproj 文件,然后点击 Add 按钮。
  • 点击您的项目并选择其主要目标,然后选择目标的 Build Phases 标签。
  • 打开“目标依赖项”部分,点击 + 按钮,然后选择 jre_emul 目标。
  • 打开“Link Binary With Libraries”部分,点击 + 按钮,然后选择 libjre_emul.a
  • 选择目标平台的“Build Settings”(构建设置)标签页,找到“Header Search Paths”(标头搜索路径),然后将路径添加到 /usr/local/src/j2objc/dist/include 目录(替换实际位置)。

现在,在构建您的项目时,可以根据需要构建 JreEmulation 项目。