¿Cómo usar clases de archivos .jar?

Leí los tutoriales de Java en Sun para archivos JAR, pero todavía no puedo encontrar una solución para mi problema. Necesito usar una clase de un archivo jar llamado jtwitter.jar, descargué el archivo y traté de ejecutarlo (descubrí ayer que los archivos .jar se pueden ejecutar haciendo doble clic en ellos) y Vista me dio un error diciendo ” Error al cargar el atributo Manifiesto de clase principal de [ruta] /jtwitter.jar “.

El tipo que codificó el archivo .jar quiere que lo importe, pero ¿dónde guardo el archivo .jar para importarlo en mi código? Traté de poner el archivo .jar y mi archivo .java en el mismo directorio, pero no funcionó.

El archivo para el que trato de trabajar está aquí: http://www.winterwell.com/software/jtwitter.php

Estoy usando JCreator LE.

No todos los archivos jar son ejecutables.

Ahora, necesita importar las clases, que están debajo del jar, en su archivo java. Por ejemplo,

import org.xml.sax.SAXException; 

Si está trabajando en un IDE, debe consultar su documentación. O al menos especifique cuál está usando aquí en este hilo. Definitivamente nos permitiría ayudarlo más.

Y si no está utilizando ningún IDE, mire la opción javac -cp . Sin embargo, es mucho mejor idea empaquetar su progtwig en un archivo jar e incluir todos los jar necesarios dentro de eso. Luego, para ejecutar su jar , como,

 java -jar my_program.jar 

deberías tener un archivo META-INF/MANIFEST.MF en tu jar . Mira aquí , para saber cómo hacerlo.

Digamos que necesitamos usar la clase Classname que está contenida en el archivo jar org.example.jar

Y tu fuente está en el archivo mysource.java así:

 import org.example.Classname; public class mysource { public static void main(String[] argv) { ...... } } 

Primero, como ve, en su código debe importar las clases. Para hacer eso necesitas import org.example.Classname;

En segundo lugar, cuando comstack la fuente, debe hacer referencia al archivo jar.

Tenga en cuenta la diferencia en el uso de : y ; mientras se comstack

  • Si estás bajo un sistema operativo como Unix:

     javac -cp '.:org.example.jar' mysource.java 
  • Si estás en Windows:

     javac -cp .;org.example.jar mysource.java 

Después de esto, mysource.class archivo de mysource.class

Ahora puedes ejecutar esto:

  • Si estás bajo un sistema operativo como Unix:

     java -cp '.:org.example.jar' mysource 
  • Si estás en Windows:

     java -cp .;org.example.jar mysource 

Necesita agregar el archivo jar en classpath. Para comstackr tu clase java:

 javac -cp .;jwitter.jar MyClass.java 

Para ejecutar su código (siempre que MyClass contenga un método principal):

 java -cp .;jwitter.jar MyClass 

Puede tener el archivo jar en cualquier lugar. El trabajo anterior si el archivo jar está en el mismo directorio que su archivo java.

Como dice workmad3, necesitas que el archivo jar esté en tu classpath. Si está comstackndo desde la línea de comandos, eso significará usar el indicador -classpath. (Evite la variable de entorno CLASSPATH, es un dolor en el cuello IMO).

Si está usando un IDE, díganos cuál y podemos ayudarlo con los pasos específicos de ese IDE.

Necesitará poner el archivo .jar en su classpath al comstackr / ejecutar su código. Luego solo usa las importaciones estándar de las clases en .jar.