# Importer du code java existant dans xcode



## Battant (6 Septembre 2011)

Bonjour,

Certaine partie de mon programme java doivent pouvoir communiquer avec le carnet d'adresse et et ical du mac. Je me suis donc tourner ver la fonction JNI de xcode et j'ai importer dans le dossier src/java, les sources java existante sous eclipse. Au moment de compiler, surprise :

Les accents ne sont pas reconnu ou très mal.
Impossible de trouver une fonction pour ajouter des librairies au classpath. Il faut modifier le fichier gérer par apache ant.
impossible de modifier la classe de démarrage qui reste toujours à "com.exemple.nomClasse".

Si je laisse la préférence d'encodage "existing file" sur preserve, le ficher est illisible (remplit de carrés)

Si je mets existing file sur "winows crlf", les accents ne sont pas reconnu au point d'endommager le fichiers

Default file encoding est réglé sur "iso latin 1". Sous eclipse, l'encodage est iso-8859-1. Est-ce que cela correspond vraiment. C'est mon encodage habituelle sur eclipse avec java. Maintenant, je suis dans cette situations.

Dans eclipse, quelque chose semble manquer pour faire tourner les librairie native.
Même si j'utilise la balise java de ant pour faire tourner mon programme cela ne marche pas tant sur eclipse que sur xcode.
xcode n'exécute plus rien par défaut si le nom et le chemin de la classe de démarrage a changé.
Impossible d'ouvrir le fichier .app comme un dossier normal afin de vérifier si le fichier manifeste de l'archive jar pointe bien vers la bonne classe.
Bref, je galère et je constate que passer d'un environnement à l'autre n'est pas facile.

Est-ce que quelqu'un à déjà eu ce genre de problème ?
Si oui, comment avez-vous fait pour le résoudre ?

Je précise que j'ai commencé le développement du programme en java sur un pc équipé de windows bien que la machine sur lequel doit tourner le programme est un mac équipé de mac os x.

Merci pour votre aide.

Salutations
__________________
Battant


----------



## ntx (6 Septembre 2011)

Je ne comprends pas bien ce que tu essaies de bricoler. Pour faire du java, Eclipse est bien supérieur à Xcode. Donc reste sur Eclipse.
Pour la partie en C/C++, effectivement il faut installer les outils de développement (Xcode) pour installer le compilateur. Mais ensuite, tu peux tout faire dans Eclipse.


----------



## Battant (7 Septembre 2011)

Bonjour,

Non, je ne bricole rien. Le problème c'est que les api ne sont pas en c ou c++ mais en objective c. Pour pouvoir rester sur eclipse, il faut faire en sorte que cet ide accepte les class et les méthode de cocoa afin de pouvoir employer la jni (java native interface).

Avez-vous une solution pour eclipse ou faut-il passer à xcode ?

Merci de me répondre

Salutations

Battant


----------



## ntx (7 Septembre 2011)

Jette un coup d'oeil sur ce document, §12.3.5
Si une appli Java est capable de charger des librairies dynamique en Obj-C, le principe du wrapper doit fonctionner.

Sinon Xcode propose un projet pour créer une librairie JNI avec du code en Obj-C.


----------

