 
 commands =
   javac: (args, cb) ->
+    jvm.classpath = [ "./", "/home/doppio/vendor/classes/" ]
     rs = new runtime.RuntimeState(stdout, user_input, read_classfile)
     jvm.run_class(rs, 'classes/util/Javac', args, -> controller.reprompt())
     return null  # no reprompt, because we handle it ourselves

    if !args[0]? or (args[0] == '-classpath' and args.length < 3)
      return "Usage: java [-classpath path1:path2...] class [args...]"
    if args[0] == '-classpath'
      paths = args[1].split(':')
      class_name = args[2]
      class_args = args[3..]
      for path in paths
        jvm.classpath.unshift(path + "/")
    else
      class_name = args[0]
      class_args = args[1..]
    rs = new runtime.RuntimeState(stdout, user_input, read_classfile)
    jvm.run_class(rs, class_name, class_args, -> controller.reprompt())
    # reset the classpath to the default
    jvm.classpath = [ "./", "/home/doppio/vendor/classes/", "/home/doppio/" ]
    return null  # no reprompt, because we handle it ourselves
  javap: (args) ->
    return "Usage: javap class" unless args[0]?

controller = null
editor = null
progress = null

class_cache = {}
raw_cache = {}
