2012-01-20 20 views
29

Esto debería ser simple pero nunca lo había hecho antes y no encontré ninguna solución.Cómo ejecutar el programa Java en el terminal con la biblioteca externa JAR

Actualmente estoy usando Eclipse para codificar mi programa, que importa alguna biblioteca JAR externa, como la biblioteca api de datos de google. Puedo usar Eclipse para compilar/construir/ejecutar el programa.

Pero ahora quiero ejecutarlo en la terminal, entonces ¿dónde debo poner esos archivos JAR, y cómo construir y ejecutar el programa?

Gracias!

Respuesta

61

Usted puede hacer:

1) javac -cp /path/to/jar/file Myprogram.java

2) java -cp .:/path/to/jar/file Myprogram

Por lo tanto, vamos a suponer que su current working directory en el terminal es src/Report/

javac -cp src/external/myfile.jar Reporter.java 

java -cp .:src/external/myfile.jar Reporter 

Echa un vistazo aquí para configurar Classpath

+0

Por ejemplo, puse todos los archivos JAR en 'src/external /' y el archivo fuente está en 'src/Report/Reporter.java', ¿puede dar los comandos específicos? – DrXCheng

+2

reemplazando ';' con ':' en java -cp.; src/external/myfile.jar Reporter funcionó para mí ... – sattu

+2

@sattu: creo que estás en un sistema Linux. – RanRag

0
  1. puede establecer su classpath en el entorno variabl CLASSPATH. en Linux, puede agregar como CLASSPATH =.:/Full/path/a/the/Jars, por ejemplo .......... src/external y solo ejecutar en el lado ..... .src/Informe/

javac Reporter.java

java Reportero

Similarmente, se puede establecer en las variables de entorno de windows. por ejemplo, en Win7

derecho haga clic en Inicio -> Informática después Propiedades -> Avanzado Configuración del sistema -> Avanzado -> Variables de entorno en las variables de usuario, haga clic en ruta de clases, y editar y añadir el pleno camino de jarras al final. voila

5

Para la elaboración del expediente de Java que tiene la dependencia de un frasco

javac -cp path_of_the_jar/jarName.jar className.java

Para ejecutar el archivo de clase

java -cp.; path_of_the_jar/jarName.jar className

Cuestiones relacionadas