diff --git a/jvm-streaming.cabal b/jvm-streaming.cabal
--- a/jvm-streaming.cabal
+++ b/jvm-streaming.cabal
@@ -1,5 +1,5 @@
 name:                jvm-streaming
-version:             0.2.1
+version:             0.2.2
 synopsis:            Expose Java iterators as streams from the streaming package.
 description:         Please see README.md.
 homepage:            http://github.com/tweag/inline-java/tree/master/jvm-streaming#readme
@@ -26,9 +26,9 @@
   build-depends:
     base >= 4.7 && < 5,
     distributed-closure >= 0.3,
-    jni >= 0.4.0,
-    jvm >= 0.3.0,
-    inline-java >= 0.7,
+    jni >= 0.4.0 && <0.6,
+    jvm >= 0.4.0 && <0.5,
+    inline-java >= 0.7 && <0.8,
     singletons >= 2.2,
     streaming >= 0.1.4
 
diff --git a/src/Language/Java/Streaming.hs b/src/Language/Java/Streaming.hs
--- a/src/Language/Java/Streaming.hs
+++ b/src/Language/Java/Streaming.hs
@@ -139,7 +139,8 @@
     return iterator
 
 withStatic [d|
-  type instance Interp (Stream (Of a) m r) = 'Iface "java.util.Iterator"
+  instance Interpretation (Stream (Of a) m r) where
+    type Interp (Stream (Of a) m r) = 'Iface "java.util.Iterator"
 
   instance Reify a => Reify (Stream (Of a) IO ()) where
     reify itLocal = do
