There is node-Tor, but I am not sure what their status is.
Orchid is a Tor client implementation and library written in pure Java. It was written from the Tor specification documents, which are available here. Orchid runs on Java 5+ and the Android devices.
In a basic use case, running Orchid will open a SOCKS5 listener which can be used as a standalone client where Tor would otherwise be used.
Orchid can also be used as a library by any application running on the JVM. This is what Orchid was really designed for and this is the recommended way to use it. Orchid can be used as a library in any Java application, or any application written in a language that compiles bytecode that will run on the Java virtual machine, e.g., JRuby, Clojure, Scala..