plugins { id 'java-library' } apply from: '../../java_tools/dependencies.gradle' configurations { all*.exclude group: 'org.hamcrest', module: 'hamcrest-core' } dependencies { api global_libs.javaxJson api project(':logging-api') api project(':core_ui') api project(':core_io') api global_libs.jcip api global_libs.json // not 'api' since Android would use own implementation implementation ts_plugin_libs.httpclient // junit 4.13 does not mix well with httpclient :( testImplementation group: 'junit', name: 'junit', version: '4.8.2' testImplementation global_libs.mockito } // yes nasty sorry evaluationDependsOn(':core_ui') evaluationDependsOn(':core_io') jar { base { archivesName = 'rusefi_autoupdate' } destinationDirectory = file("$rootDir/../java_console_binary") // lame 'shadowJar' manual implementation causes logo.png to be include both as source ans outputs? weird duplicatesStrategy = DuplicatesStrategy.WARN from project.sourceSets.main.allSource from project(':core_ui').sourceSets.main.output from project(":core_io").sourceSets.main.output manifest { attributes( 'Main-Class': 'com.rusefi.autoupdate.Autoupdate', 'Built-Date': new Date().toString() ) } }