web-dev-qa-db-fra.com

comment inclure des bibliothèques dans Java sans utiliser un IDE

Comment importer des bibliothèques dans mon programme Java sans utiliser un IDE comme Netbeans? Dans Netbeans je le fais de cette façon: enter image description here

Comment puis-je obtenir la même chose en utilisant simplement notepad ++ ou le bloc-notes du programmeur. Autant que possible, je ne veux pas utiliser Netbeans car ce serait exagéré car je ne travaille que sur des projets simples.

34
user225269
javac -classpath external.jar myClass.Java

MODIFIER:

Si votre classe principale est dans un package

package com.mycompany;
public class myClass
{
...
...

puis

tu auras besoin

javac -classpath external.jar com/mycompany/myClass.Java 

et

courir

Java -classpath external.jar com.mycompany.myClass
37
Bala R

En plus de la publication de @ StackOverflowException, l'ajout de plusieurs fichiers et emplacements est également parfait ...

javac -cp location1/;location2/;file1.jar;file2.jar fileToCompile

Remarques::

-cp et -classpath sont la même chose. Si vous utilisez Solaris (et d'autres versions UNIX), changez le ';' à ':'

14
Simon David Kelly

Toutes les autres affiches sont parfaites, il vous suffit d'ajouter le pot à votre chemin de classe.

Java offre de nombreux mécanismes pour définir le chemin de classe, y compris via la ligne de commande, via une variable d'environnement et en le définissant dans le MANIFEST.MF d'un exécutable Java jar file.

Ce sont tous une douleur dans le cou à gérer. Il est bon de connaître la technique et de comprendre les bases. Mais c'est vraiment une mauvaise idée de les utiliser.

Voici ce que vous devez faire.

Tout d'abord, placez toutes vos bibliothèques Java Java au même endroit sur votre système. C:\Java\bibliothèques, ou autre chose. Quelque part dont vous vous souvenez, quelque part accessible par tous vos projets.

Ensuite, nommez toutes vos bibliothèques en utilisant leurs numéros de version. Si vous utilisez log4j v1.4.1, placez le pot dans un répertoire log4j-1.4.1 dans votre zone de bibliothèque. Cela vous donne un versionnage "gratuit" de la bibliothèque.

Enfin, apprenez Ant. Pour les projets simples, Ant est simple. Utilisez le fichier Ant build.xml pour compiler, tester et exécuter votre application.

Pourquoi? Plusieurs raisons.

Parce qu'une fois qu'il est configuré, l'ajout d'une nouvelle bibliothèque à votre projet est trivial, vous ajoutez une ligne à votre build.xml. Ant vous permet de gérer plus facilement les abstractions simples (comme l'emplacement de toutes vos bibliothèques).

Le build.xml est autonome. Si vous utilisez, par exemple, une variable d'environnement pour le chemin de classe, le chemin de classe d'un projet peut être différent de celui d'un autre. Cela signifie réinitialiser la variable d'environnement. Continuez ainsi et vous finirez par jurer à un "nouveau problème" où cela "a fonctionné avant" quand c'est parce que votre chemin de classe était mal réglé. Définissez-le une fois dans le fichier build.xml et oubliez-le.

Ant est portable. Il fonctionne de la même manière sous Windows, Linux, Mac, AS/400, il s'exécute partout où s'exécute Java, contrairement aux scripts shell ou aux fichiers BAT.

C'est léger. Les scripts de fourmi simples sont simples. Ils n'apportent pas beaucoup de bagages avec eux, vous pouvez toujours les rendre effrayants compliqués. C'est beaucoup plus simple que Maven pour les builds uniquement.

La plupart des IDE prennent directement en charge Ant. Si vous avez décidé de revenir à un IDE, la plupart peuvent simplement utiliser votre fichier de génération de fourmis avec une configuration minimale.

C'est ainsi que vous résolvez votre problème de chemin de classe avec notepad ++. Définir le chemin de classe fonctionne, mais il ne va pas assez loin, c'est une tâche difficile à administrer et à gérer. Apprendre les bases de Ant vous emmènera beaucoup plus loin avec un travail minimal.

6
Will Hartung

Vous devez les mettre sur votre chemin de classe, comme

Java -classpath someJar.jar YourMainClass

Et, bien sûr, vous pouvez faire de même pour javac.

Si vous devez avoir plus d'un fichier jar ou répertoire sur votre chemin de classe, vous devrez utiliser le séparateur de chemin par défaut de votre plate-forme. Par exemple, sous Windows,

Java -classpath someJar.jar;myJar.jar YourMainClass

En passant, vous pourriez trouver plus facile d'utiliser un IDE pour gérer ce genre de choses. J'ai personnellement utilisé juste mon éditeur légèrement scriptable et je me suis bien débrouillé. Mais c'est bon à savoir comment faire ce truc en ligne de commande.

3
user1249380

mettez les pots dans votre chemin de classe, le chemin de classe est une variable d'environnement

2
f0ster

Assurez-vous que le fichier jar se trouve dans votre chemin de classe et que vous disposez de l'instruction import.

1
Derek Beattie