Skip to content
Snippets Groups Projects
build.gradle 4.27 KiB
Newer Older
evaluationDependsOn(':commonbase')
evaluationDependsOn(':common')
evaluationDependsOn(':openbis_api')
evaluationDependsOn(':openbis-common')
evaluationDependsOn(':authentication')
evaluationDependsOn(':dbmigration')
evaluationDependsOn(':openbis')

felmer's avatar
felmer committed
apply from: '../gradle/javaproject.gradle'
configurations.create('testRuntimeFirst')
configurations.create('testRuntimeSecond')
configurations.create('datastoreExecRuntime')

	compile (project(':openbis')) {
		exclude group: 'google', module: 'gwt-user'
	}

	compile project(':common'),
			project(':openbis-common'),
			// authentication and dbmigration are required as they contain later versions of 
			// some classes than cisd-cifex.jar. They need to be in classpath before cisd-cifex.jar
			project(':authentication'),
			'apache:ftpserver-core:1.0.6',
			'apache:sshd-core:0.8.0',
			'jfree:jfreechart:1.0.13',
			'cisd:cisd-cifex:r1550129411',
			'shriop:javacsv:2.0',
juanf's avatar
juanf committed
			'cisd:cisd-image-readers:r1553067167',
			'hjg:pngj:0.62',
			'apache:commons-fileupload:1.3.3',
			'dspace:xoai-data-provider:4.2.0',
			'javax.annotation:javax.annotation-api:1.3.2',
			'javax.xml.bind:jaxb-api:2.3.0',
			'org.glassfish.main.javaee-api:javax.jws:3.1.2.2'
	runtime 'bioformats:bioformats:6.5.1'
	// eln-lims Jython APIs dependencies
	datastoreExecRuntime files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/eln-lims-api/lib/zip4j_1.3.2.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/eln-lims-api/lib/plasmapper.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/eln-lims-api/lib/htmlcleaner-2.23.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/exports-api/lib/docx4j-3.3.3.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/exports-api/lib/ascii-table-1.1.0.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/exports-api/lib/docxbuilder.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/exports-api/lib/jsoup-1.11.3.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/exports-api/lib/serializer-2.7.2.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/exports-api/lib/slf4j-api-1.7.21.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/exports-api/lib/xalan-2.7.2.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/zenodo-exports-api/lib/job-scheduler.jar"),
			files("../openbis_standard_technologies/dist/core-plugins/eln-lims/1/dss/reporting-plugins/password-reset-api/lib/persistentkeyvaluestore.jar")

	testCompile (project(path: ':openbis', configuration: 'tests')) {
		exclude group: 'google', module: 'gwt-user'
	}
	testCompile project(path: ':common', configuration: 'tests'),
			project(path: ':openbis-common', configuration: 'tests')
	testRuntimeFirst 'javax:servlet-api:3.1.0'
	testRuntimeSecond 'google:gwt-user:2.4'
configurations {
	testRuntime.exclude group: 'google', module: 'gwt-servlet'
}

sourceSets.test.runtimeClasspath = configurations.testRuntimeFirst + configurations.testRuntimeSecond + sourceSets.test.runtimeClasspath

	test {
		resources {
			srcDirs = ['source/java']
		}
	}

	datastoreExec {
		java {
			srcDirs = ['source/java']
		}
		resources {
			srcDirs = ['source/java']
		}

		compileClasspath += sourceSets.main.compileClasspath
		runtimeClasspath += sourceSets.main.runtimeClasspath + configurations.datastoreExecRuntime
	from('targets/dist') {
		include 'BUILD*INFO'
	}
	from('source/java') {
		include '*.xml'
	}
	from('source') {
		include 'sql/**/*.sql'
		into 'datastore_server'
	}

task executeOpenBisDataStore(type: JavaExec) {
	main = 'ch.systemsx.cisd.openbis.dss.generic.DataStoreServer'
	classpath = sourceSets.datastoreExec.runtimeClasspath
	jvmArgs(['-ea', '-Dpython.path=../libraries/jython/jython-lib',
			 '-Dorg.eclipse.jetty.util.log.class=org.eclipse.jetty.util.log.StrErrLog'])
}