title: Using OrientDB 3.0.0m1 java API with TinkerPop 3
body: <p>I am attempting to issue Tinker Pop 3 [Orient-DB 3.0 snapshot] requests via the Java API.  I am using OCommandGremlin as follows [should match 2 Vs]:
  ></p>
  
  <pre><code>OGremlinHelper.global().create();
  OCommandRequest req  = graph.command(new OCommandGremlin("g.V().has('name', 'fast').both()"));
  Iterable&lt;Vertex&gt; result2 = req.execute();
  </code></pre>
  
  <p>....</p>
  
  <p>It seems to be looking for TinkerPop 2.x class com.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine</p>
  
  <p>I get the following error:</p>
  
  <pre><code>WARNING: $ANSI{green {db=demodb}} GREMLIN language not available (not in classpath)
  Exception in thread "main" java.lang.NoClassDefFoundError: com/tinkerpop/gremlin/groovy/jsr223/GremlinGroovyScriptEngine
      at com.orientechnologies.orient.graph.gremlin.OGremlinEngineThreadLocal.get(OGremlinEngineThreadLocal.java:61)
      at com.orientechnologies.orient.graph.gremlin.OGremlinHelper.getGremlinEngine(OGremlinHelper.java:165)
      at com.orientechnologies.orient.graph.gremlin.OGremlinHelper.execute(OGremlinHelper.java:83)
      at com.orientechnologies.orient.graph.gremlin.OGremlinHelper.execute(OGremlinHelper.java:75)
      at com.orientechnologies.orient.graph.gremlin.OCommandGremlinExecutor.execute(OCommandGremlinExecutor.java:59)
      at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.executeCommand(OAbstractPaginatedStorage.java:2480)
      at com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.command(OAbstractPaginatedStorage.java:2425)
      at com.orientechnologies.orient.core.command.OCommandRequestTextAbstract.execute(OCommandRequestTextAbstract.java:68)
      at com.tinkerpop.blueprints.impls.orient.OrientGraphCommand.execute(OrientGraphCommand.java:49)
      at BasicGremlinDriver.main(BasicGremlinDriver.java:202)
  Caused by: java.lang.ClassNotFoundException: com.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngine
      at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
      at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
      at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
  </code></pre>
  
  <p>My maven file is as follows:</p>
  
  <pre><code>&lt;dependencies&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.orientechnologies&lt;/groupId&gt;
          &lt;artifactId&gt;orientdb-graphdb&lt;/artifactId&gt;
          &lt;version&gt;3.0.0m1&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.orientechnologies&lt;/groupId&gt;
          &lt;artifactId&gt;orientdb-spatial&lt;/artifactId&gt;
          &lt;version&gt;3.0.0m1&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;com.orientechnologies&lt;/groupId&gt;
          &lt;artifactId&gt;orientdb-lucene&lt;/artifactId&gt;
          &lt;version&gt;3.0.0m1&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.tinkerpop&lt;/groupId&gt;
          &lt;artifactId&gt;gremlin-core&lt;/artifactId&gt;
          &lt;version&gt;3.2.4&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.tinkerpop&lt;/groupId&gt;
          &lt;artifactId&gt;tinkergraph-gremlin&lt;/artifactId&gt;
          &lt;version&gt;3.2.4&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.tinkerpop&lt;/groupId&gt;
          &lt;artifactId&gt;gremlin-groovy&lt;/artifactId&gt;
          &lt;version&gt;3.2.4&lt;/version&gt;
      &lt;/dependency&gt;
  </code></pre>
  
  <p>....</p>
  
  <p>I also set $/META-INF/services/javax.script.ScriptEngineFactory to org.apache.tinkerpop.gremlin.groovy.jsr223.GremlinGroovyScriptEngineFactory which is the Tinker Pop 3 version and I can find it on my class path.</p>
  
  <p>Feedback appreciated.</p>
  
  <p>Thanks</p>
  
  <p>JGZ</p>