# Compiled class file
*.class

# Log file
*.log

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*

*.iml

.idea/

target/

.DS_Store
nohup.out

# VSCode
*.project
*.settings/
*.classpath
*.factorypath
.vscode/

# Ignore it while not disable for some reason.
dependency-reduced-pom.xml
/logs/output.log.*