Bonjour,

je dois développer une application sensée être cross-platform. Je me tâte entre AWT, Swing et SWT. J'ai déjà développer en Swing, mais connaissant les utilisateurs finaux, SWT me tente car il utilise le code natif de l'OS pour la génération des interfaces (ça les perturbera moins). Je me suis documenté et j'ai vu qu'il faut fournir le swt.jar ainsi que la librairie entre SWT et l'OS (dll, so, ...). J'ai fait un test sur une platform à la fois, youpi, ça marche.

Ma question est la suivante :
Ne sachant pas à l'avance la plateforme sur laquelle l'application va tourner (celle ci devra être exécutable à partir d'un CDROM), est - il possible de lier à l'application les différentes librairies d'interface (en gros pour linux, osX, win) pour que celle ci puisse s'exécuter automatiquement quelque soit le système d'exploitation ?

J'ai trouvé des Jar's (jar_win,jar_linux,jar_osX) contenant à la fois la librairie SWT et les librairies type .dll/.so/... Mais je ne peux en mettre qu'un (jar) à la fois (en fait, il prend le premier dans l'ordre -classpath- et ignore les suivant). Ce que je peux tenter, c'est de séparer et mettre un Jar pour la librairie SWT et les librairies .dll/.so/... et modifier le java.library.path en fonction du système d'exploitation ? (chipotage ?)

Pourtant awt utilise aussi du code natif et il n'y a pas toutes ces contraintes ...

De plus, ne connaissant pas l'os cible, ne faudrait - il pas aussi prévoir les librairies (dll,so,..) pour les architectures 64bits ?

En résumé, je dois prévoir une application qui puisse tourner à la fois sur windows, mac, linux (peux pas faire des versions différentes de l'application) et je dois donc prévoir tout ce qu'il faut pour ces plateforme, est - ce possible avec swt ?

si quelqu'un a des infos,
merci

neimad1

ps : j'espère que je suis clair ... :-)