# Compiled class file
*.class
target/

# Log file
*.log
logs/

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# 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*

# intellij idea
*.iml
.idea/

# preflight record result
*.jfr

# jmh output
*.json

# dubbo-serialization-native-hessian git repo
dubbo-serialization-native-hessian/
