Question

Je veux au port des bibliothèques J2SE existantes (par exemple les libs Apache compression) à utiliser pour le développement Blackberry, mais il y a un hic (et pas seulement un).

Tout d'abord, la plupart des bibliothèques Java utilisent intensivement les collections J2SE et les types de données qui sont généralement absentes sur les plates-formes J2ME - mais c'est théoriquement résolubles grâce à J2SE open-source api implémentations comme Apache Harmony. Le plus gros problème est que, il semble, Blackberry est basé JDK sur Java 1.4, tout code qui utilise des génériques et d'autres caractéristiques, comme 1,5 énumérations, ne sont pas sans effort compilable sur Blackberry.

Ce qui soulève une question intéressante de savoir s'il y a des outils ou des projets existants là-bas qui pourrait faire la conversion automatique 1.5-> 1.4, tout en soutenant bytecode J2ME-bâtarde:)

Un projet que j'ai pu trouver est Retroweaver , mais je ne suis pas tout à fait sûr de savoir comment ce projet actif est.

Je suis sûr que le problème de 1.5-> 1.4 conversion automatique n'est pas unique - ne si quelqu'un a une expérience avec elle

Était-ce utile?

La solution 4

Alors, voici ce que je fini par faire jusqu'à présent. Declawer + code personnalisé pour la génération des classes d'énumération

La seule différenciation chose au sujet Declawer est que, bien qu'il soit très simple et, franchement, un peu un hack (il repose sur une capacité non documentée de JavaC), sa sortie est le code Java réelle par rapport à une meilleure ou converti bytecode Java . C'est très précieux pour le développement à base de java-mobile, franchement, la modification de bytecode / instrumentation est pas du tout comme développé pour les plates-formes J2ME comme pour J2SE, et il n'y a tout simplement pas de garantie que les choses vont travailler hors de la boîte la manière ils le font avec J2SE où ces outils ont déjà été utilisés par quelques développeurs.

La fonctionnalité de Declawer est limité (pas d'amour pour 1,5 énumérations ou autoboxing), donc je devais ajouter un script python pour générer automatiquement des classes équivalentes dans la fonctionnalité à 1,5 énumérations de descripteurs simples. Cette génération arrive au moment de la construction.

Cette adresse mes préoccupations à ce jour, à la seule exception de trouver un bon J2ME convivial conteneur IoC à utiliser pour mon application (une fois que vous essayez ces gars-là, il est si difficile de les abandonner.)

Mais c'est une discussion pour un thread différent.

Autres conseils

Avez-vous essayé Retrotranslator ? Je lis qu'il fait un meilleur travail que Retroweaver.

Voici quelque chose d'autre je trouve ici sur un débordement de pile:

  

Compiler avec l'javac régulière et le ciblage d'une machine virtuelle Java plus vous donnera bytecode bon pour les médicaments génériques au moins

Ce qui rend tout à fait logique d'essayer.

Je l'ai utilisé retroweaver dans le passé (J2SE, J2ME pas) - il a très bien fonctionné. Le coût d'utilisation est un couple supplémentaire dépendances d'exécution.

Mise à jour 28/01/2013 : Après l'exécution des problèmes avec RetroWeaver, je l'ai passé à

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top