/*******************************************************************************
  * Copyright (c) 2016 Gigatronik Ingolstadt GmbH
  * All rights reserved. This program and the accompanying materials
  * are made available under the terms of the Eclipse Public License v1.0
  * which accompanies this distribution, and is available at
  * http://www.eclipse.org/legal/epl-v10.html
  *
  * Contributors:
  * Sebastian Dirsch - initial configuration
  *******************************************************************************/ 

description = 'mdm realms'
apply plugin: 'maven'
apply plugin: 'eclipse'
version = '1.0.0'

repositories {
	mavenLocal()
	mavenCentral()
}

subprojects {
	group = 'org.eclipse.mdm'
	
	apply plugin: 'eclipse'
	apply plugin: 'java'
	apply plugin: 'maven'
	sourceCompatibility = 1.8
    
    repositories {
        mavenLocal()
        mavenCentral()
        jcenter()
    }

    dependencies {    	
    	compileOnly 'javax:javaee-api:7.0' 
    
        testCompile 'junit:junit:4.12'
        testCompile 'org.mockito:mockito-core:1.+'
    }
}
 

