# Maven and build files
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/

# Eclipse
.classpath
.project
.settings
.recommenders
.metadata

# Idea IntelliJ
*.ipr
*.iws
*.iml
.idea/

# Caches
.scala_dependencies

# Other
.DS_Store
hs_err_*

# Binaries
*.jar

# Backups
*~
.#*
\#*
