diff --git a/java/dataset/pom.xml b/java/dataset/pom.xml
index 7d6092743bf4d..7f4c93c7453bb 100644
--- a/java/dataset/pom.xml
+++ b/java/dataset/pom.xml
@@ -47,6 +47,10 @@
arrow-c-data
compile
+
+ org.immutables
+ value
+
org.apache.arrow
arrow-memory-netty
@@ -161,6 +165,15 @@
+
+ maven-surefire-plugin
+
+ false
+
+ ${project.basedir}/../../testing/data
+
+
+
org.xolstice.maven.plugins
protobuf-maven-plugin
diff --git a/java/dataset/src/main/java/module-info.java b/java/dataset/src/main/java/module-info.java
new file mode 100644
index 0000000000000..1672d12ffec69
--- /dev/null
+++ b/java/dataset/src/main/java/module-info.java
@@ -0,0 +1,29 @@
+/*
+
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+open module org.apache.arrow.dataset {
+ exports org.apache.arrow.dataset.file;
+ exports org.apache.arrow.dataset.source;
+ exports org.apache.arrow.dataset.jni;
+ exports org.apache.arrow.dataset.substrait;
+ exports org.apache.arrow.dataset.scanner;
+
+ requires org.apache.arrow.c;
+ requires org.apache.arrow.memory.core;
+ requires org.apache.arrow.vector;
+}