Ajouter le projet JreEmulation à votre projet Xcode

La bibliothèque d'émulation JRE de J2ObjC peut être créée à l'aide de Xcode et peut être incluse en tant que sous-projet dans vos projets Xcode. Cela vous permet de contrôler les paramètres utilisés pour créer cette bibliothèque afin qu'elle puisse être utilisée au mieux par vos projets.

Télécharger le code source

Soit: - Téléchargez le bundle source actuel et importez-le dans un répertoire local. ou - Clonez l'arborescence du code source avec git. L'avantage d'une extraction de source locale est qu'il est plus facile de se tenir informé des dernières modifications du projet J2ObjC, mais cela nécessite une certaine connaissance des systèmes de contrôle des versions.

Le code source peut aller n'importe où sur votre système local. Pour les besoins de ce document, nous utiliserons /usr/local/src/j2objc, mais modifiez ce chemin d'accès selon vos préférences.

Installer Build Tools

Les outils de ligne de commande de Xcode et Apache Maven doivent être installés pour compiler J2ObjC. Voici quelques conseils :

Il s'agit de recherches Google et non de pages statiques, car l'installation peut souvent changer avec les nouvelles versions de Mac OS X et Xcode.

Créer le projet

Suivez les étapes pour compiler J2ObjC. Les builds de ligne de commande sont facultatifs, mais plus faciles à déboguer que lorsqu'ils sont appelés dans Xcode.

Lors du débogage du JRE, il est recommandé d'ajouter les lignes suivantes en haut du fichier jre_emul/environment.mk avant exécuter une compilation propre:

DEBUGGING_SYMBOLS=YES
OPTIMIZATION_LEVEL=0

Le projet JreEmulation Xcode

Dans Xcode, ouvrez /usr/local/src/j2objc/jre_emul/JreEmulation.xcodeproj. Voici ses dossiers:

  • Classes (Classes) : ensemble des classes d'émulation JRE principales, qui ne sont pas créées par la traduction des fichiers sources Java.
  • jre_emul_tests: ensemble de tests unitaires créés et exécutés dans Xcode. Ils n'incluent pas les tests JUnit traduits, qui sont compilés et exécutés à partir de la ligne de commande à l'aide de make test dans le répertoire jre_emul.
  • Transpiled Classes (Classes transpilées) : il s'agit des fichiers créés en traduisant les fichiers sources Java de la bibliothèque JRE. Remarques :
  • Xcode marque les fichiers manquants en rouge. Étant donné que ces fichiers sont créés lors de la compilation, ils seront initialement tous rouges jusqu'à la compilation du projet.
  • Nous ajoutons régulièrement de nouvelles classes à la bibliothèque d'émulation JRE. Cette liste peut donc être obsolète. Si tel est le cas, effectuez un clic droit sur ce dossier, cliquez sur "Add Files to JreEmulation.xcodeproj" (Ajouter des fichiers à JreEmulation.xcodeproj), puis ajoutez de nouveaux fichiers .m et .h à partir de jre_emul/build_result/Classes et de ses sous-répertoires.

Pour créer le projet JreEmulation, sélectionnez la cible jre_emul, puis cliquez sur le bouton Run (Exécuter) de Xcode. Pour créer et exécuter les tests unitaires, cliquez sur la flèche vers le bas à côté du bouton Exécuter, puis sélectionnez Tester.

Ajouter le projet JreEmulation à votre projet

  • Dans le panneau "Project Naviagator" à gauche, effectuez un clic droit sur votre projet, puis sélectionnez "Add Files to Project Name" (Ajouter des fichiers au nom du projet).
  • Recherchez le fichier jre_emul/JreEmulation.xcodeproj, puis cliquez sur le bouton Add (Ajouter).
  • Cliquez sur votre projet, sélectionnez sa cible principale, puis l'onglet "Build Phases" (Phases de compilation) de la cible.
  • Ouvrez la section "Target Dependencies" (Dépendances cibles), cliquez sur le bouton +, puis sélectionnez la cible jre_emul.
  • Ouvrez la section "Link Binary With libraries", cliquez sur le bouton + et sélectionnez libjre_emul.a.
  • Sélectionnez l'onglet Build Settings de la cible, recherchez Header Search Paths et ajoutez le chemin d'accès au répertoire /usr/local/src/j2objc/dist/include (en remplaçant l'emplacement réel).

Une fois votre projet créé, le projet JreEmulation est créé selon les besoins.