2012-06-10 15 views
7

Aunque es probable que se lo recomiende y IDE para codificar proyectos Java avanzados, personalmente prefiero ejecutar casi por completo la línea de comandos (usando gedit como editor de texto). Así que por favor no me digas "¡Solo usa eclipse!" o algo así: Phaciendo un paquete java en la línea de comandos

Mi pregunta es cuál es el método para crear un paquete en Java mediante un comando.

No estoy hablando de empaquetar una aplicación que se ejecuta en la línea de comandos, estoy hablando de hacer un paquete en la línea de comandos. ¿Estoy haciendo un archivo de texto? ¿Estoy haciendo un directorio?

Relacionado, ¿cómo se puede vincular a libs relacionados y nativos sin el uso de un IDE?

Sé que estoy siendo realmente torpe aquí, pero realmente prefiero el control que uno obtiene trabajando en la línea de comando.

+3

"Creación de un paquete"? ¿Te refieres a "crear un JAR"? Si es así, comience con la documentación: http://docs.oracle.com/javase/tutorial/deployment/jar/index.html. –

+0

no, los frascos son bastante fáciles: PI significaba un paquete real (que, en realidad, es solo un directorio ... – gossfunkel

Respuesta

5

paquetes son solo directorios en el sistema de archivos. por lo que su paquete: com.mycompany.util corresponde a un directorio com/mycompany/util.

Al ejecutar y compilar etc., su directorio de trabajo actual debería ubicarse donde se encuentra ese directorio superior.

Para incluir bibliotecas, inclúyalas en su classpath al compilar y ejecutar. Por ejemplo hacer un directorio Proyecto myproject y bajo que tienen sus java-archivos y paquetes bajo myproject/src/ y bibliotecas que se utilizan bajo myproject/libs/ Luego, cuando el directorio actual es workding myproject ejecutar java -cp .:libs/*.jar o lo mismo con javac.

Pero te sugiero que estudies el uso de hormiga o maven.

+3

así es ... los paquetes no son más que estructuras de directorios organizados –

2

Puede llevarse bien en la línea de comandos utilizando una herramienta de embalaje como Ant o Maven. Maven es especialmente útil porque es una herramienta de nivel superior que ya sabe cómo crear varios tipos de proyectos: aplicaciones de línea de comandos, aplicaciones web, bibliotecas, etc. También maneja las dependencias de la biblioteca al descargarlas de los repositorios.

+0

No creo que esto es lo que busca OP. Está hablando de paquetes en código fuente java, no cómo empaquetar la aplicación final. –

+0

@AleksG - Maven seguiría siendo útil ya que el OP necesita "vincular a las librerías relacionadas". –

7

Tiene tres partes: (1) crear una estructura de directorios; (2) indicar el paquete en el archivo java; (3) compilarlo.

Por ejemplo, si desea crear el paquete com.mycompany.myproject, entonces usted necesita para comenzar en el directorio base para su proyecto y luego:

(1) crear el directorio com/mycompany/myproject

(2) crear archivos de Java en ese directorio, indicando package com.mycompany.myproject en ellos;

(3) compilar los archivos, por ejemplo, con javac -cp . com/mycompany/myproject/*.java

Es posible que desee especificar un directorio de salida diferente con el fin de no mezclar las fuentes y clases compiladas.

Si es necesario utilizar librerías externas (archivos .jar) para compilar, entonces es necesario utilizar el parámetro de línea de comandos o -cp-classpath a javac herramienta para especificarlos, por ejemplo,

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

Puede ser una buena idea colocar todas las bibliotecas externas en un solo lugar, p. lib subdirectorio de su directorio de proyecto principal. Y, dicho sea de paso, el comando javac anterior supone un entorno de tipo Unix. Si está en Windows, necesitará usar ; para la separación de rutas.

1

de paquetes de Java es sólo una estructura de directorios, por lo que una forma sencilla de crear un paquete que permite decir com.organization.test en el terminal habrá

mkdir -p com/organization/test 
Cuestiones relacionadas