github/gitignore · Java.gitignore

Разбор шаблона .gitignore для Java

Почему Java.gitignore игнорирует файлы .class, архивы пакетов (jar, war) и журналы сбоев JVM, и какие проблемы с порядком возникают при совместном использовании с шаблонами инструментов сборки.

Открыть в генераторе Открыть вместе с Maven, Gradle, JetBrains, macOS

Java.gitignore — короткий шаблон примерно из 13 строк, который охватывает только результаты компиляции и файлы, оставляемые JVM. Ни target/ из Maven, ни build/ из Gradle в нём нет, поэтому в реальных проектах его обычно используют вместе с шаблонами Maven или Gradle и шаблоном IDE.

Особого внимания заслуживает правило *.jar. Его цель — не держать в репозитории архивы для распространения, но вместе с ними игнорируется и jar обёртки (wrapper) инструмента сборки, поэтому важен порядок шаблонов.

Разбор правил

ШаблонЧто и почему игнорируется
*.classРезультаты компиляцииБайт-код, который javac создаёт из исходников. При наличии исходников его всегда можно пересобрать, а содержимое зависит от версии компилятора.
*.jar*.war*.nar*.ear*.zip*.tar.gz*.rarАрхивы пакетовФайлы дистрибутива и архивы, получаемые при сборке. Цель — вместо старой практики класть jar-зависимости прямо в репозиторий получать их из репозиториев вроде Maven Central.
hs_err_pid*replay_pid*Журналы сбоев JVMhs_err_pid<номер>.log, который JVM оставляет в рабочем каталоге при аварийном завершении, и файлы replay_pid для воспроизведения работы JIT-компилятора. Это одноразовые файлы для отладки.
*.logЛогиЖурналы работы приложения. Если коммитить лог-файлы, при каждом запуске будут появляться изменения, а сведения о рабочей среде могут утечь.
*.ctxt.mtj.tmp/BlueJ и J2MEФайлы контекста учебной IDE BlueJ и временная папка Mobile Tools for Java (J2ME). Если вы не пользуетесь этими инструментами, правила ни на что не влияют.

На что обратить внимание на практике

Исходный шаблон

Java.gitignoreСтрок правил: 13
# 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*

Источник шаблонов: github/gitignore/Java.gitignore @356fd7b (2026-09-11) · CC0-1.0

Шаблоны, используемые вместе

Разборы других шаблонов