60 votes

Scala sur iOS avec Avian

Il existe une JVM légère relativement récente appelée Avian qui peut produire des exécutables pour les cibles iOS.

Il n'y a pas trop de documentation sur le site Web (et on ne trouve pas beaucoup de recherches avec Google). Je me demandais si quelqu'un était au courant d'un didacticiel pas à pas sur la manière de faire fonctionner un programme Scala de base sur iOS, à l'aide d' Avian .

7voto

Eduardo Points 3097

RoboVM est une autre alternative du compilateur JVM à iOS. Bien qu’elle en soit à ses débuts, elle semble assez prometteuse, avec des exemples de compilation de Scala pour iOS.

4voto

soc Points 10868

Compilé Scala sources sont totalement standard des fichiers de classe. Vous devriez être en mesure de suivre les instructions (voir "Intégration") sur le site, sans grands changements, il suffit de traiter l' scala-library.jar comme une dépendance de votre code.

J'ai réussi à amorcer le compilateur complet et la bibliothèque standard en cours d'exécution sur Aviaire il y a quelques jours.

Certaines parties pourraient être encore un peu rude sur les bords, e. g. il est obligatoire correctif qui fera partie de la prochaine version de Scala (2.10.1) mais n'est pas dans 2.10.0. Si vous voulez jouer avec elle dès maintenant, vous devez utiliser une nightly build jusqu'à 2.10.1 est libéré.

Si vous avez des questions supplémentaires, veuillez les signaler!

3voto

Eduardo Points 3097

Je n'en ai peut-être plus besoin, maintenant qu'Oracle crée JavaFX en open-source sur iOS et Android !

EDIT: Oracle a mis à jour l'article pour annoncer qu'il ne publierait pas de machine virtuelle Java. Il semble donc que JavaFX + Avian pourrait être la solution.

2voto

vladimir Points 306

L'exécution de Java byte code sur iOS (qui n'est pas ancrée) n'est pas seulement l'exécution de cette ou de ces JVM. Autant je comprends iOS de gestion de la mémoire ne permet pas de mémoire exécutable pages pour être accessible en écriture en mode utilisateur. Que, fondamentalement, interdit toute compilation JIT. Donc, même si il est possible d'exécuter certaines compilé (soit à partir de Java ou Scala) catégories spécifiques de la machine virtuelle Java, je voudrais vérifier soigneusement la façon dont cette VM prend en charge l'Avance De Temps de compilation pour être exécutable sur iOS. Comme je l'ai vu Aviaire AOT fonctionne bien sur un ordinateur de bureau. Pour iOS, vous aurez à vérifier par vous même, bien que le projet semble prometteur dans AOT région.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X