donc je recapitule
j'ai un repertoire lib contenant toutes les librairies inimaginable sur swt linux et windows
sur le meme niveau j'ai un repertoire testport dans lequel j'ai les .class
j'ai un repertoire META-INF avec un fichier MANIFEST.MF le quel contient
je creer mon jar a l'aide de la commandeCode:
1
2
3
4 Manifest-Version: 1.0 Main-Class: TestSWT2 Class-Path: ./lib/org.eclipse.swt.win32.win32.x86_3.3.0.v3346.jar
j'execute mon jar a l'aide de la commandeCode:
1
2 jar cvfm testport.jar META-INF/MANIFEST.MF -C testport .
il fonctionne impeccable sous windowsCode:
1
2 java -jar testport.jar
maintenant sous linux je tape
java -jar testport.jar, ca plante, ce qui est normal car il ne trouve pas la librairie gtk, donc je modifie le meta-inf sous linux, car j'ai la meme structure de repertoire
je tape la commande suivante sous linuxCode:
1
2
3
4 Manifest-Version: 1.0 Main-Class: TestSWT2 Class-Path: ./lib/org.eclipse.swt.gtk.linux.x86_3.3.1.v3346i.jar
ca marche impeccable sous linux, donc , la personne sous linux sera oblige de modifier le jar , de recreer le jar pour que ca puisse fonctionner sous linux.Code:
1
2 java -jar testport.jar
aussi je rappel que j'ai tester toutes les possiblites, j'ai inclut dans le manifest toutes librairies necessaire windows et linux , swt.jar etc... , et ca ne marchait pas non plus.
donc soit il y a un probleme de version de java sous mon linux ou soit j'ai oublie quelque chose , mais la je ne voit car tout y est, le repertoire lib a toutes les bibliotheque.
sinon si quelqu'un pouvais me dire ce que je doit mettre exactement sur le manifest.mf.
j'ia aussi teste dans le fichier manifest ceci sans resultat
j'ai mis aussi pour windows dans le repertoire lib la dll swt-win32-3346.dllCode:
1
2
3
4 Manifest-Version: 1.0 Main-Class: TestSWT2 Class-Path: ./lib/org.eclipse.swt.win32.win32.x86_3.3.0.v3346.jar ./lib/org.eclipse.swt_3.3.0.v3346.jar ./lib/org.eclipse.swt_3.3.0.v3346.jar
j'utilise java 1.6.0.02 et les libriarie 3.3.
j'ai utilise aussi cette commande:
aucun resultat, peut etre un probleme de guillemet au niveau du parametre -D ou bien il faut mettre des guillemets dans le parametre classpath, j'ai deja essaye tous ca sans resultat.Code:
1
2 java -classpath .\lib\org.eclipse.swt_3.3.0.v3346.jar;.\lib\org.eclipse.swt.win32.win32.x86_3.3.0.v3346.jar -Djava.library.path=".\lib" TesTSWT2
ce que j'ai a l'ecran DOS c'est
Merci de votre aide.Code:
1
2
3 java -classpath .\lib\org.eclipse.swt_3.3.0.v3346.jar;.\lib\org.eclipse.swt.win32.win32.x86_3.3.0.v3346.jar -Djava.library.path=".\lib" TesTSWT2 Exception in thread "main" java.lang.NoClassDefFoundError: TesTSWT2