Tutorial: Crear un JAR
Este proceso NO es necesario para la entrega del TP.
Para poder compartir un programa hecho en Java de forma tal que pueda ser ejecutado en otra computadora, los pasos en general son:
- Compilar el proyecto y crear un archivo
.jar. - Compartir el
.jara otra persona. - Esa persona debe:
- Tener instalado el Java Runtime Environment (JRE).
- Ejecutar en la consola
java -jar archivo.jar(probablemente también funcione darle doble click al archivo).
Pasos para crear el JAR
Con este método es probable que el JAR funcione únicamente en el mismo sistema operativo en el que fue creado (por ejemplo, si lo creaste en Windows, solo se puede ejecutar en computadoras con Windows).
-
Agregar a la clase
Main(la que extiendeApplication) una funciónmaincon:public static void main(String[] args) { launch(args); } -
Crear una clase nueva que NO extienda
Applicationy que simplemente invoque aMain.main():public class ShadedMain { public static void main(String[] args) { Main.main(args); } } -
Agregar en el
pom.xml(entre<plugins>y</plugins>) y luego refrescar la configuración de Maven:<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.5.1</version> <executions> <execution> <goals> <goal>shade</goal> </goals> <configuration> <shadedArtifactAttached>true</shadedArtifactAttached> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>ShadedMain</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> -
Ejecutar el target
packagede Maven:
-
El JAR debería estar disponible en la carpeta
target, con un nombre comotp2023c2-1.0-SNAPSHOT-shaded.jar.
Se puede ejecutar en la consola con:
java -jar target/tp2023c2-1.0-SNAPSHOT-shaded.jar