2009-04-02 12 views
0

J'ai développé une application Java swing, puis je l'ai déployée via un package .jar.Problème lors de l'exécution de l'application Java

Je lance mon application sur mon PC en double-cliquant sur le fichier .jar et tout se passe bien, tout va bien aussi à partir de la ligne de commande (invite DOS).

Voici mon problème. J'ai essayé d'exécuter mon application sur un autre PC:

  • même système d'exploitation (Windows XP)

  • même JRE (1.6.0_U13)

  • mais Oracle JInitiator 1.3.1.18 installé (c'est la seule différence avec mon PC)

L'application fonctionne bien seulement à partir de la ligne de commande, mais pas de GUI!

Double-cliquez sur le fichier .jar je reçois cette erreur:

`Could not find the main class. program will exit!` 

cette erreur peut être due à un conflit entre JInitiator et JRE?

Est-ce que quelqu'un a eu le même problème?

Merci


modifier:

exécution des fichiers .jar de IUG est associé à la commande "javaw"

Répondre

1

Une description rapide pourrait être - jinitiator installe comme JRE entièrement implémenté avec quelques fonctionnalités supplémentaires pour les téléchargements mis en cache lorsqu'il s'agit d'applets.

Comme tous les installeurs JRE que j'ai vus récemment, qu'ils soient nouveaux ou anciens, ils remplacent plusieurs entrées dans le registre pour devenir le JRE actif. Tout ce que vous avez installé en dernier sera exécuté à moins que vous fournissiez un chemin d'accès complet à java.exe ou que vous changiez le registre pour re point à un autre JRE.

examiner:

  • HKEY_CLASSES_ROOT \ jarfile \ shell \ open \ command et voir si le chemin d'accès javaw.exe est correct.(ou même inclus)
  • HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows \ CurrentVersion \ App Chemins \ java.exe et javaw.exe et javaws.exe pour vérifier le chemin là aussi.
+0

merci, je vais vérifier cela au travail demain: D – Giancarlo

3

Il est probablement un conflit avec JInit, qui change l'association entre pot fichiers et la commande java utilisée pour les lancer.

Voir ceci thread.

Re-installed java and the problem has gone away.

+0

java réinstallée avant de poster ici, et rien n'a changé :( – Giancarlo

+0

argh. Ensuite, pouvez-vous revérifier l'association de fichier actuellement défini dans Windows pour le fichier jar? – VonC

1

Avez-vous vérifié vos variables PATH/CLASSPATH/JAVA_PATH? Il est possible que Jinitiator ait installé la mauvaise version à l'avant.

0

Vérifiez éventuellement vos entrées de manifeste. Voyez si le fichier MANIFEST.MF dans le fichier jar contient correctement l'attribut Main-Class à la classe supposée être appelée, sinon essayez de le définir.

+0

manifest.mf contient le droit principal attribut de classe ... – Giancarlo