# NOTE: if you modify this file, you probably need to modify the file set that
# is an input to 'maven-assembly-plugin' that generates source distribution.
# This is typically in files named 'src.xml' throughout this repository.

# Ignore files generated by the Maven build process.
target/
bin/

# Ignore IntelliJ files.
.idea/
*.iml
*.ipr
*.iws

# Ignore Eclipse files.
.classpath
.project
.factorypath
.checkstyle
.fbExcludeFilterFile
.apt_generated/
.settings/

# The build process generates the dependency-reduced POM, but it shouldn't be
# committed.
dependency-reduced-pom.xml

# Hotspot VM leaves this log in a non-target directory when java crashes
hs_err_pid*.log

# Ignore files that end with '~', since they are most likely auto-save files
# produced by a text editor.
*~

# Ignore MacOSX files.
.DS_Store

# NOTE: if you modify this file, you probably need to modify the file set that
# is an input to 'maven-assembly-plugin' that generates source distribution.
# This is typically in files named 'src.xml' throughout this repository.
