  py_wheel(
      name = "minimal_with_py_package",
      # Package data. We're building "example_minimal_package-0.0.1-py3-none-any.whl"
-@@ -135,6 +155,16 @@ py_wheel(
+@@ -144,6 +164,13 @@ py_wheel(
+     deps = [
+         ":example_pkg",
      ],
- )
-
-+py_wheel(
 +    name = "use_genrule_with_dir_in_outs",
 +    distribution = "use_genrule_with_dir_in_outs",
 +    python_tag = "py3",

+    deps = [
+        ":example_pkg_with_data"
+    ]
+)
+
 py_test(
     name = "wheel_test",
     srcs = ["wheel_test.py"],
diff --git experimental/tools/wheelmaker.py experimental/tools/wheelmaker.py
index 38fb122..4c7be30 100644
--- experimental/tools/wheelmaker.py
+++ experimental/tools/wheelmaker.py
@@ -102,6 +102,11 @@ class WheelMaker(object):

             return normalized_arcname

+        # If anywhere in the dependency tree a directory is set
+        # it will be passed in as an input file and we need to
+        # ignore.
+        if os.path.isdir(real_filename):
+            return
         arcname = arcname_from(package_filename)

         self._zipfile.write(real_filename, arcname=arcname)

diff --git experimental/examples/wheel/BUILD experimental/examples/wheel/BUILD
index d721e4c..065c775 100644
--- experimental/examples/wheel/BUILD
+++ experimental/examples/wheel/BUILD
@@ -31,6 +31,20 @@ py_library(
