2011-07-20 3 views
1

Comment se compare-t-on à l'autre? J'ai une application intégrée qui, si elle est compilée et archivée dans un fichier .jar avec l'outil d'exportation Eclipse habituel, fonctionnera correctement dans mon émulateur et, par la suite, dans l'appareil lui-même. Maintenant, j'essaie d'utiliser l'outil jar de la ligne de commande pour le même effet, mais je suis bloqué. Le fichier .jar est créé et je peux même l'installer correctement dans l'émulateur, mais quand j'essaie de l'exécuter, rien ne se passe. En raison de mon expérience avec cet émulateur/appareil, je pense que c'est un problème sur le fichier .jar généré par l'outil de ligne de commande. Je n'utilise aucune sorte de "paramètre de compilation" pour ainsi dire avec Eclipse sauf pour le fichier manifeste, que j'ajoute aussi avec l'outil de ligne de commande. En outre, il y a "une certaine" compression en utilisant Eclipse, alors que l'outil en ligne de commande génère un fichier encore plus compressé (ou pas du tout compressé en utilisant le paramètre -0, mais aucun n'a fonctionné). Eh bien, tout m'a fait me demander comment fonctionne l'outil d'archivage Eclipse et s'il existe un moyen d'obtenir les mêmes résultats avec l'outil de ligne de commande - je sais, je sais, ça sonne stupide, mais c'est aussi le putain d'émulateur .Outil d'exportation Eclipse vs outil jar de ligne de commande

Non que je considère pertinent, mais la commande jar J'utilise est la suivante:

jar cmfv0 34092040.mf Releaser.jar -C src . (output file size: 140kb) 

ou

jar cmfv 34092040.mf Releaser.jar -C src . (output file size: 53kb) 

Eclipse génère un fichier 81kb.

EDIT: Veuillez fermer cette question. Le problème est ma stupidité géante (j'ai oublié de COMPILER les fichiers avant de les archiver.)

+1

Avez-vous essayé d'ouvrir les pots et de comparer le contenu? – whiskeysierra

+0

Ouais, ils sont identiques, la même structure de dossiers et tout. Mais je pense que Kelly French ci-dessous a frappé le spot. – makoshichi

+0

Je me tiens corrigé, les fichiers compilés non compressés n'ont pas la même taille – makoshichi

Répondre

1

Eclipse peut créer une structure différente à l'intérieur de ses archives, par ex. y compris les dépendances ou autres. Y a-t-il des projets dépendants ou des pots de tiers utilisés?

Si le code dans le fichier JAR dépend d'un fichier jar externe, vous pouvez ajouter une entrée dans le fichier manifest.mf pour chaque fichier jar dépendant. Ce qui est supposé arriver est que le runtime vérifie le manifeste et donne une erreur plus spécifique; quelque chose comme "Impossible de trouver jar: xyz.jar" qui vous rappelle de l'ajouter au classpath.

+0

Bon appel, oui, j'utilise un couple d'autres .jars référencés en externe. En fait, le genre de problème que j'ai avec la ligne de commande générée .jar (où rien ne se passe) est exactement le même quand j'oublie d'ajouter un .jar externe au bon dossier. Des idées sur la façon de traiter avec l'outil de ligne de commande? (Je commence à croire que je ne peux plus fuir les Ants ou Maven ...) – makoshichi

+0

BTW, je ne veux pas inclure les .jars externes, je veux juste savoir comment faire une référence à eux (après tout, la gestion de projet Eclipse s'occupe de ça) – makoshichi

Questions connexes