J'ai lu les tutoriels Java sur les fichiers JAR pour Sun, mais je ne trouve toujours pas de solution à mon problème. Je dois utiliser une classe d'un fichier jar appelé jtwitter.jar. J'ai téléchargé le fichier et essayé de l'exécuter (j'ai découvert hier que les fichiers .jar peuvent être exécutés en double-cliquant dessus) et Vista m'a donné une erreur en disant " Impossible de charger l’attribut Main-Class Manifest depuis [path] /jtwitter.jar ".
Le gars qui a codé le fichier .jar veut que je l'importe, mais où dois-je stocker le fichier .jar pour l'importer dans mon code? J'ai essayé de mettre le fichier .jar et mon fichier .Java dans le même répertoire, cela n'a pas fonctionné.
Le fichier pour lequel je tente de travailler est ici: http://www.winterwell.com/software/jtwitter.php
J'utilise JCreator LE.
Tous les fichiers jar ne sont pas exécutables.
Maintenant, vous devez importer les classes, qui se trouvent sous le fichier jar, dans votre fichier Java. Par exemple,
import org.xml.sax.SAXException;
Si vous travaillez sur un IDE, vous devriez vous référer à sa documentation. Ou du moins, spécifiez celui que vous utilisez ici dans ce fil. Cela nous permettrait certainement de vous aider davantage.
Et si vous n’utilisez aucun IDE, consultez l’option javac -cp . Cependant, il est préférable de conditionner votre programme dans un fichier jar
et d'y inclure tous les fichiers jar
requis. Ensuite, pour exécuter votre jar
, par exemple,
Java -jar my_program.jar
vous devriez avoir un fichier META-INF/MANIFEST.MF
dans votre jar
. Voir ici , pour savoir comment faire.
Disons que nous devons utiliser la classe Classname
contenue dans le fichier jar org.example.jar
Et votre source est dans le fichier mysource.Java
comme ceci:
import org.example.Classname;
public class mysource {
public static void main(String[] argv) {
......
}
}
Premièrement, comme vous le voyez, dans votre code, vous devez importer les classes. Pour ce faire, vous avez besoin de import org.example.Classname;
Deuxièmement, lorsque vous compilez la source, vous devez référencer le fichier jar.
Veuillez noter la différence entre :
et ;
lors de la compilation
Si vous êtes sous un système d'exploitation semblable à Unix:
javac -cp '.:org.example.jar' mysource.Java
Si vous êtes sous windows:
javac -cp .;org.example.jar mysource.Java
Après cela, vous obtenez le fichier de bytecode mysource.class
Maintenant vous pouvez lancer ceci:
Si vous êtes sous un système d'exploitation semblable à Unix:
Java -cp '.:org.example.jar' mysource
Si vous êtes sous windows:
Java -cp .;org.example.jar mysource
Vous devez ajouter le fichier JAR dans le classpath. Pour compiler votre classe Java:
javac -cp .;jwitter.jar MyClass.Java
Pour exécuter votre code (à condition que MyClass contienne une méthode principale):
Java -cp .;jwitter.jar MyClass
Vous pouvez avoir le fichier jar n'importe où. Les opérations ci-dessus fonctionnent si le fichier jar se trouve dans le même répertoire que votre fichier Java.
Vous devez placer le fichier .jar dans votre chemin de classe lors de la compilation/exécution de votre code. Ensuite, vous utilisez uniquement les importations standard des classes du fichier .jar.
Comme le dit workmad3, le fichier jar doit figurer dans votre chemin de classe. Si vous compilez à partir de la ligne de commande, vous devrez utiliser l’option -classpath. (Évitez la variable d'environnement CLASSPATH, c'est une douleur dans le cou, IMO.)
Si vous utilisez un IDE, veuillez nous indiquer lequel et nous pouvons vous aider avec les étapes spécifiques à cet IDE.