# maven ignore
target/
*.class
*.jar
*.war
*.zip
*.tar
*.tar.gz
dependency-reduced-pom.xml
.flattened-pom.xml
pom.xml.versionsBackup

# maven plugin ignore
release.properties
cobertura.ser
*.gpg

# eclipse ignore
.settings/
.project
.classpath
.factorypath

# idea ignore
.idea/
!/.idea/icon.png
*.ipr
*.iml
*.iws

# temp ignore
logs/
*.log
*.doc
*.cache
*.diff
*.patch
*.tmp
.hugo_build.lock

# system ignore
.DS_Store
Thumbs.db

# antlr ignore
gen/
*.tokens

# agent build ignore
/agent/
