// Plugins apply plugin: 'jacoco' apply plugin: 'java' sourceCompatibility = 11 // Common version config ext { wpilibVersion = '2020.3.2-99-g9f4de91' joglVersion = '2.4.0-rc-20200307' openCVVersion = '3.4.7-2' } // Common deps dependencies { // Jackson implementation "com.fasterxml.jackson.core:jackson-annotations:2.10.0" implementation "com.fasterxml.jackson.core:jackson-core:2.10.0" implementation "com.fasterxml.jackson.core:jackson-databind:2.10.0" // Apache commons implementation group: 'org.apache.commons', name: 'commons-lang3', version: '3.9' implementation 'org.apache.commons:commons-math3:3.6.1' implementation group: 'commons-io', name: 'commons-io', version: '2.6' implementation group: 'commons-cli', name: 'commons-cli', version: '1.4' implementation 'org.apache.commons:commons-collections4:4.4' implementation 'org.apache.commons:commons-exec:1.3' // WPILib deps implementation "edu.wpi.first.wpiutil:wpiutil-java:$wpilibVersion" implementation "edu.wpi.first.cameraserver:cameraserver-java:$wpilibVersion" implementation "edu.wpi.first.cscore:cscore-java:$wpilibVersion" compile "edu.wpi.first.cscore:cscore-jni:$wpilibVersion:linuxaarch64bionic" compile "edu.wpi.first.cscore:cscore-jni:$wpilibVersion:linuxraspbian" compile "edu.wpi.first.cscore:cscore-jni:$wpilibVersion:linuxx86-64" compile "edu.wpi.first.cscore:cscore-jni:$wpilibVersion:osxx86-64" compile "edu.wpi.first.cscore:cscore-jni:$wpilibVersion:windowsx86-64" implementation "edu.wpi.first.ntcore:ntcore-java:$wpilibVersion" compile "edu.wpi.first.ntcore:ntcore-jni:$wpilibVersion:linuxaarch64bionic" compile "edu.wpi.first.ntcore:ntcore-jni:$wpilibVersion:linuxraspbian" compile "edu.wpi.first.ntcore:ntcore-jni:$wpilibVersion:linuxx86-64" compile "edu.wpi.first.ntcore:ntcore-jni:$wpilibVersion:osxx86-64" compile "edu.wpi.first.ntcore:ntcore-jni:$wpilibVersion:windowsx86-64" implementation "edu.wpi.first.thirdparty.frc2020.opencv:opencv-java:$openCVVersion" compile "edu.wpi.first.thirdparty.frc2020.opencv:opencv-jni:$openCVVersion:linuxaarch64bionic" compile "edu.wpi.first.thirdparty.frc2020.opencv:opencv-jni:$openCVVersion:linuxraspbian" compile "edu.wpi.first.thirdparty.frc2020.opencv:opencv-jni:$openCVVersion:linuxx86-64" compile "edu.wpi.first.thirdparty.frc2020.opencv:opencv-jni:$openCVVersion:osxx86-64" compile "edu.wpi.first.thirdparty.frc2020.opencv:opencv-jni:$openCVVersion:windowsx86-64" implementation 'edu.wpi.first.wpimath:wpimath-java:2021.1.2-9-g26584ff' // test stuff testImplementation('org.junit.jupiter:junit-jupiter:5.6.0') } test { useJUnitPlatform() testLogging { events 'passed', 'skipped', 'failed', 'standardOut', 'standardError' } } task testHeadless(type: Test) { group = 'verification' systemProperty("java.awt.headless", "true") useJUnitPlatform() } task generateJavaDocs(type: Javadoc) { source = sourceSets.main.allJava classpath = sourceSets.main.compileClasspath destinationDir = file("${projectDir}/build/docs") } jacocoTestReport { dependsOn test // Tests are required to run before generating the report reports { xml.enabled true } afterEvaluate { classDirectories.setFrom(files(classDirectories.files.collect { fileTree(dir: it, exclude: 'edu/wpi/**' ) })) } }