diff --git a/shared/opencv.gradle b/shared/opencv.gradle
new file mode 100644
index 0000000..ca3764d
--- /dev/null
+++ b/shared/opencv.gradle
@@ -0,0 +1,33 @@
+def opencvVersion = '3.4.7-2'
+
+if (project.hasProperty('useCpp') && project.useCpp) {
+    model {
+        binaries {
+            withType(NativeBinarySpec).all {
+                def binary = it
+                project.sharedCvConfigs.each {
+                    if (binary.component.name == it.key) {
+                        nativeUtils.useRequiredLibrary(binary, 'opencv_shared')
+                    }
+                }
+                project.staticCvConfigs.each {
+                    if (binary.component.name == it.key) {
+                        nativeUtils.useRequiredLibrary(binary, 'opencv_static')
+                    }
+                }
+            }
+        }
+    }
+}
+
+if (project.hasProperty('useJava') && project.useJava) {
+    dependencies {
+        implementation "edu.wpi.first.thirdparty.frc2020.opencv:opencv-java:${opencvVersion}"
+        if (!project.hasProperty('skipDev') || !project.skipDev) {
+            devImplementation "edu.wpi.first.thirdparty.frc2020.opencv:opencv-java:${opencvVersion}"
+        }
+        if (project.hasProperty('useDocumentation') && project.useDocumentation) {
+            javaSource "edu.wpi.first.thirdparty.frc2020.opencv:opencv-java:${opencvVersion}:sources"
+        }
+    }
+}
