# Backupfiles from mergetools #
*.orig

# Java Class Files #
*.class

# Package Files #
*.jar
*.war
*.ear
*.zip

# Eclipse #
bin/
classes/

# Maven #
target/
.mvn/
.surefire-*
.flattened-pom.xml

# settings files are handled in rt-feature project and settings files should not be changed (can be enforecd with 'git add .settings -f')
.settings
/.project
**/.settings/org.sonar.ide.eclipse.core.prefs

org.eclipse.scout.sdk.s2e*/META-INF/MANIFEST.MF
