2012-06-10 3 views
7

Bien qu'il soit probablement reccomended on utilise et IDE pour le codage des projets java avancés, je préfère courir entièrement la ligne de commande presque (en utilisant gedit comme éditeur de texte). Alors s'il vous plait, ne me dites pas simplement "Utilisez eclipse!" ou quelque chose: Pfaire un paquet java dans la ligne de commande

Ma question est ce que la méthode de création d'un package en Java est par une commande.

Je ne parle pas d'emballage d'une application qui fonctionne dans la ligne de commande, je parle de faire un paquet dans la ligne de commande. Est-ce que je fais un fichier texte? Est-ce que je fais un répertoire?

Dans le même ordre, comment un lien vers libs et indigènes connexes sans utilisation d'un IDE?

Je sais que je suis vraiment être ici maladroit, mais je préfère vraiment le contrôle on se travaille dans la ligne de commande.

+3

"Création d'un package"? Voulez-vous dire "créer un JAR"? Si oui, commencez par la documentation: http://docs.oracle.com/javase/tutorial/deployment/jar/index.html. –

+0

non, les pots sont assez faciles: PI signifiait un paquet réel (qui, il s'avère, est juste un répertoire ... – gossfunkel

Répondre

5

Les packages sont simplement des répertoires sur le système de fichiers. de sorte que votre colis: com.mycompany.util correspond à un répertoire com/mycompany/util.

Lors de l'exécution et la compilation etc votre répertoire courant workding devrait être là où ce répertoire supérieur est situé.

Pour inclure des bibliothèques, incluez-les dans votre chemin de classe lors de la compilation et de l'exécution. Par exemple faire un répertoire de projet myproject et sous qui ont vos fichiers java-et paquets sous myproject/src/ et les bibliothèques que vous utilisez sous myproject/libs/ Puis, lorsque votre répertoire courant workding est myproject execute java -cp .:libs/*.jar ou même avec javac.

Mais je vous suggère d'utiliser ant ou maven.

+3

c'est bien ... les paquets ne sont rien d'autre que des structures de répertoires organisées –

2

Vous pouvez vous entendre très bien sur la ligne de commande en utilisant un outil de conditionnement tel que Ant ou Maven. Maven est particulièrement utile car c'est un outil de niveau supérieur qui sait déjà comment construire différents types de projets: applications en ligne de commande, webapps, bibliothèques, etc. Il gère également les dépendances de bibliothèques en les téléchargeant depuis des dépôts.

+0

Je ne pense pas que c'est ce que l'OP est après. Il parle de paquets dans le code source java, pas comment emballer l'application finale –

+0

@AleksG - Maven serait toujours utile car l'OP doit "se lier aux librairies apparentées". –

7

Il comporte trois parties: (1) créer une structure de répertoire; (2) indiquer le paquet dans le fichier java; (3) compilez-le.

Par exemple, si vous voulez créer un paquet com.mycompany.myproject, alors vous devez commencer dans le répertoire de base pour votre projet, puis:

(1) créer le répertoire com/mycompany/myproject

(2) créer des fichiers java dans ce répertoire, en indiquant package com.mycompany.myproject dans ceux-ci;

(3) compiler les fichiers, par exemple, avec javac -cp . com/mycompany/myproject/*.java

Vous pouvez spécifier un répertoire de sortie différent afin de ne pas mélanger les sources et les classes compilées.

Si vous devez utiliser des bibliothèques externes (fichiers .jar) pour compiler, vous devez utiliser le paramètre de ligne de commande ou -classpath pour spécifier l'outil javac, par ex.

javac -cp .:some_library.jar:lib/another_library.java com/mycompany/myproject/*.java 

Il peut être judicieux de placer toutes les bibliothèques externes à un endroit, par ex. Sous-répertoire lib de votre répertoire de projet principal. Et, en passant, la commande javac ci-dessus suppose un environnement unix-like. Si vous utilisez Windows, vous devez utiliser ; pour la séparation des chemins.

1

package Java est juste une structure de répertoire, donc une façon simple de créer un package permet de dire com.organization.test dans le terminal sera

mkdir -p com/organization/test 
Questions connexes