# Maven and build files
target/

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

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

# Caches
.scala_dependencies

# Other
.DS_Store
*.jar

# Backups
pom.xml.backup
*~
.#*
\#*
