Tengo un programa que consta de dos archivos Java Swing simples.
¿Cómo hago un archivo JAR ejecutable para mi programa?
java
jar
executable-jar
Rubén
fuente
fuente

Respuestas:
Un archivo jar es simplemente un archivo que contiene una colección de archivos java. Para hacer que un archivo jar sea ejecutable, debe especificar dónde está la
mainclase en el archivo jar. El código de ejemplo sería el siguiente.public class JarExample { public static void main(String[] args) { javax.swing.SwingUtilities.invokeLater(new Runnable() { public void run() { // your logic here } }); } }Compile sus clases. Para hacer un frasco, también necesita crear un archivo de manifiesto (
MANIFEST.MF). Por ejemplo,Manifest-Version: 1.0 Main-Class: JarExampleColoque los archivos de clase de salida compilados (JarExample.class, JarExample $ 1.class) y el archivo de manifiesto en la misma carpeta. En el símbolo del sistema, vaya a la carpeta donde se colocaron sus archivos y cree el jar usando el comando jar. Por ejemplo (si nombra su archivo de manifiesto como jexample.mf)
Creará el ejecutable jarexample.jar.
fuente
jar cvfe jarexample.jar com.example.jar.JarExample *.classEn Eclipse puedes hacerlo simplemente de la siguiente manera:
fuente
Aquí está en una línea:
jar cvfe myjar.jar package.MainClass *.class¿Dónde
MainClassestá la clase con tumainmétodo ypackageesMainClassel paquete.Tenga en cuenta que debe compilar sus
.javaarchivos en.classarchivos antes de hacer esto.c create new archive v generate verbose output on standard output f specify archive file name e specify application entry point for stand-alone application bundled into an executable jar fileEsta respuesta se inspiró en el comentario de Powerslave sobre otra respuesta.
fuente
Error: Could not find or load main class mtx.testClass Caused by: java.lang.ClassNotFoundException: mtx.testClasstestClassdefinido en uno de sus.classarchivos? Asegúrese de haber compilado sus.javaarchivos fuente ( ) antes de ejecutar este comando. Además, por lo general, su clase debería ser UpperCamelCase, puede intentar cambiarle el nombre aTestClass.Si usa maven, agregue lo siguiente a su archivo pom.xml :
<plugin> <!-- Build an executable JAR --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifest> <mainClass>com.path.to.YourMainClass</mainClass> </manifest> </archive> </configuration> </plugin>Entonces puedes correr
mvn package. El archivo jar se ubicará en el directorio de destino .fuente
Es demasiado tarde para responder a esta pregunta. Pero si alguien está buscando esta respuesta ahora, la he hecho para que se ejecute sin errores.
En primer lugar, asegúrese de descargar y agregar maven a la ruta . [
mvn --version] le dará las especificaciones de la versión si lo ha agregado a la ruta correctamente.Ahora, agregue el siguiente código al proyecto maven [
pom.xml], en el siguiente código reemplácelo con su propio punto de entrada del archivo principal, por ejemplo, [ com.example.test.Test ].<plugin> <!-- Build an executable JAR --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.4</version> <configuration> <archive> <manifest> <mainClass> your_package_to_class_that_contains_main_file .MainFileName</mainClass> </manifest> </archive> </configuration> </plugin>Ahora vaya a la línea de comando [
CMD] en su proyecto y escribamvn packagey generará un archivo jar como algo así comoProjectName-0.0.1-SNAPSHOT.jarbajotargetdirectorio.Ahora navegue hasta el directorio de destino por .
cd targetFinalmente escriba
java -jar jar-file-name.jary sí, esto debería funcionar correctamente si no tiene ningún error en su programa.fuente