diff --git a/jni/Example.java b/src/bindings/java/Example.java
similarity index 100%
rename from jni/Example.java
rename to src/bindings/java/Example.java
diff --git a/jni/Makefile b/src/bindings/java/Makefile
similarity index 100%
rename from jni/Makefile
rename to src/bindings/java/Makefile
diff --git a/jni/NOTES b/src/bindings/java/NOTES
similarity index 100%
rename from jni/NOTES
rename to src/bindings/java/NOTES
diff --git a/jni/com/upstandinghackers/hammer/Action.java b/src/bindings/java/com/upstandinghackers/hammer/Action.java
similarity index 100%
rename from jni/com/upstandinghackers/hammer/Action.java
rename to src/bindings/java/com/upstandinghackers/hammer/Action.java
diff --git a/jni/com/upstandinghackers/hammer/Hammer.java b/src/bindings/java/com/upstandinghackers/hammer/Hammer.java
similarity index 100%
rename from jni/com/upstandinghackers/hammer/Hammer.java
rename to src/bindings/java/com/upstandinghackers/hammer/Hammer.java
diff --git a/jni/com/upstandinghackers/hammer/ParseResult.java b/src/bindings/java/com/upstandinghackers/hammer/ParseResult.java
similarity index 100%
rename from jni/com/upstandinghackers/hammer/ParseResult.java
rename to src/bindings/java/com/upstandinghackers/hammer/ParseResult.java
diff --git a/jni/com/upstandinghackers/hammer/ParsedToken.java b/src/bindings/java/com/upstandinghackers/hammer/ParsedToken.java
similarity index 100%
rename from jni/com/upstandinghackers/hammer/ParsedToken.java
rename to src/bindings/java/com/upstandinghackers/hammer/ParsedToken.java
diff --git a/jni/com/upstandinghackers/hammer/Parser.java b/src/bindings/java/com/upstandinghackers/hammer/Parser.java
similarity index 100%
rename from jni/com/upstandinghackers/hammer/Parser.java
rename to src/bindings/java/com/upstandinghackers/hammer/Parser.java
diff --git a/jni/com/upstandinghackers/hammer/Predicate.java b/src/bindings/java/com/upstandinghackers/hammer/Predicate.java
similarity index 100%
rename from jni/com/upstandinghackers/hammer/Predicate.java
rename to src/bindings/java/com/upstandinghackers/hammer/Predicate.java
diff --git a/jni/com_upstandinghackers_hammer_Hammer.c b/src/bindings/java/com_upstandinghackers_hammer_Hammer.c
similarity index 100%
rename from jni/com_upstandinghackers_hammer_Hammer.c
rename to src/bindings/java/com_upstandinghackers_hammer_Hammer.c
diff --git a/jni/com_upstandinghackers_hammer_ParseResult.c b/src/bindings/java/com_upstandinghackers_hammer_ParseResult.c
similarity index 100%
rename from jni/com_upstandinghackers_hammer_ParseResult.c
rename to src/bindings/java/com_upstandinghackers_hammer_ParseResult.c
diff --git a/jni/com_upstandinghackers_hammer_ParsedToken.c b/src/bindings/java/com_upstandinghackers_hammer_ParsedToken.c
similarity index 100%
rename from jni/com_upstandinghackers_hammer_ParsedToken.c
rename to src/bindings/java/com_upstandinghackers_hammer_ParsedToken.c
diff --git a/jni/com_upstandinghackers_hammer_Parser.c b/src/bindings/java/com_upstandinghackers_hammer_Parser.c
similarity index 100%
rename from jni/com_upstandinghackers_hammer_Parser.c
rename to src/bindings/java/com_upstandinghackers_hammer_Parser.c
diff --git a/jni/jhammer.h b/src/bindings/java/jhammer.h
similarity index 100%
rename from jni/jhammer.h
rename to src/bindings/java/jhammer.h