github/gitignore · Java.gitignore

Plantilla .gitignore de Java explicada

Explica por qué Java.gitignore ignora archivos .class, archivos de paquete (jar, war) y registros de fallos de la JVM, y el problema del orden al usarla junto con plantillas de herramientas de compilación.

Abrir en el generador Abrir junto con Maven, Gradle, JetBrains, macOS

Java.gitignore es una plantilla corta de unas 13 líneas que solo trata los resultados de compilación y los archivos que deja la JVM. No incluye el target/ de Maven ni el build/ de Gradle, así que en un proyecto real lo normal es usarla junto con las plantillas de Maven o Gradle y la del IDE.

La regla que más atención merece es *.jar. Su intención es no meter archivos de distribución en el repositorio, pero también ignora el jar del wrapper de la herramienta de compilación, así que hay que cuidar el orden de la combinación.

Explicación regla por regla

PatrónQué ignora y por qué
*.classResultados de compilaciónEs el bytecode que genera javac a partir del código fuente. Con el código fuente se puede recrear en cualquier momento, y su contenido cambia según la versión del compilador.
*.jar*.war*.nar*.ear*.zip*.tar.gz*.rarArchivos de paqueteSon los archivos de distribución y comprimidos que salen de la compilación. El objetivo es obtener las dependencias desde registros como Maven Central en lugar de la antigua práctica de meter los jar directamente en el repositorio.
hs_err_pid*replay_pid*Registros de fallos de la JVMSon el hs_err_pid<número>.log que la JVM deja en el directorio de trabajo cuando termina de forma anómala y los archivos replay_pid para reproducir el compilador JIT. Son archivos de un solo uso para depurar.
*.logRegistrosSon los registros de ejecución de la aplicación. Si se confirman, cada ejecución genera cambios y puede filtrarse información de operación.
*.ctxt.mtj.tmp/BlueJ y J2MESon los archivos de contexto del IDE educativo BlueJ y la carpeta temporal de Mobile Tools for Java (J2ME). Si no usas esas herramientas, no te afectan.

Precauciones en la práctica

Plantilla original

Java.gitignore13 líneas de reglas
# Compiled class file*.class# Log file*.log# BlueJ files*.ctxt# Mobile Tools for Java (J2ME).mtj.tmp/# Package Files #*.jar*.war*.nar*.ear*.zip*.tar.gz*.rar# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xmlhs_err_pid*replay_pid*

Origen de las plantillas: github/gitignore/Java.gitignore @356fd7b (2026-09-11) · CC0-1.0

Plantillas que suelen usarse juntas

Otras plantillas explicadas