使用 janusgraph 和 gremlin scala 为 spark 构建 sbt
Build sbt for spark with janusgraph and gremlin scala
我试图使用 gremlin scala 为 spark 和 janusgraph 设置 IntelliJ 构建,但我 运行 出错了。
我的 build.sbt 文件是:
version := "1.0"
scalaVersion := "2.11.11"
libraryDependencies += "com.michaelpollmeier" % "gremlin-scala" % "2.3.0"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.2.1"
// https://mvnrepository.com/artifact/org.apache.spark/spark-sql
libraryDependencies += "org.apache.spark" %% "spark-sql" % "2.2.1"
// https://mvnrepository.com/artifact/org.apache.spark/spark-mllib
libraryDependencies += "org.apache.spark" %% "spark-mllib" % "2.2.1"
// https://mvnrepository.com/artifact/org.apache.spark/spark-hive
libraryDependencies += "org.apache.spark" %% "spark-hive" % "2.2.1"
// https://mvnrepository.com/artifact/org.janusgraph/janusgraph-core
libraryDependencies += "org.janusgraph" % "janusgraph-core" % "0.2.0"
libraryDependencies ++= Seq(
"ch.qos.logback" % "logback-classic" % "1.2.3" % Test,
"org.scalatest" %% "scalatest" % "3.0.3" % Test
)
resolvers ++= Seq(
Resolver.mavenLocal,
"Sonatype OSS" at "https://oss.sonatype.org/content/repositories/public"
)
但是当我尝试编译使用 gremlin scala 库或 io.Source 库的代码时出现错误。有人可以分享他们的构建文件或告诉我应该修改什么来修复它。
提前致谢。
所以,我试图编译这段代码:
import gremlin.scala._
import org.apache.commons.configuration.BaseConfiguration
import org.janusgraph.core.JanusGraphFactory
class Test1() {
val conf = new BaseConfiguration()
conf.setProperty("storage.backend", "inmemory")
val gr = JanusGraphFactory.open(conf)
val graph = gr.asScala()
graph.close
}
object Test{
def main(args: Array[String]) {
val t = new Test1()
println("in Main")
}
}
我得到的错误是:
错误:(1, 8) 未找到:对象 gremlin
导入 gremlin.scala._
错误:(10, 18) 值 asScala 不是 org.janusgraph.core.JanusGraph 的成员
验证图 = gr.asScala()
如果您转到 Gremlin-Scala GitHub page,您会看到当前版本是“3.3.1.1”,
Typically you just need to add a dependency on "com.michaelpollmeier" %% "gremlin-scala" % "SOME_VERSION"
and one for the graph db of your choice to your build.sbt (this readme assumes tinkergraph). The latest version is displayed at the top of this readme in the maven badge.
APi 的主要版本发生变化也就不足为奇了
图书馆是不同的。如果我将您的第一个依赖项更改为
//libraryDependencies += "com.michaelpollmeier" % "gremlin-scala" % "2.3.0" //old!
libraryDependencies += "com.michaelpollmeier" %% "gremlin-scala" % "3.3.1.1"
然后你的示例代码会为我编译。
我试图使用 gremlin scala 为 spark 和 janusgraph 设置 IntelliJ 构建,但我 运行 出错了。
我的 build.sbt 文件是:
version := "1.0"
scalaVersion := "2.11.11"
libraryDependencies += "com.michaelpollmeier" % "gremlin-scala" % "2.3.0"
libraryDependencies += "org.apache.spark" %% "spark-core" % "2.2.1"
// https://mvnrepository.com/artifact/org.apache.spark/spark-sql
libraryDependencies += "org.apache.spark" %% "spark-sql" % "2.2.1"
// https://mvnrepository.com/artifact/org.apache.spark/spark-mllib
libraryDependencies += "org.apache.spark" %% "spark-mllib" % "2.2.1"
// https://mvnrepository.com/artifact/org.apache.spark/spark-hive
libraryDependencies += "org.apache.spark" %% "spark-hive" % "2.2.1"
// https://mvnrepository.com/artifact/org.janusgraph/janusgraph-core
libraryDependencies += "org.janusgraph" % "janusgraph-core" % "0.2.0"
libraryDependencies ++= Seq(
"ch.qos.logback" % "logback-classic" % "1.2.3" % Test,
"org.scalatest" %% "scalatest" % "3.0.3" % Test
)
resolvers ++= Seq(
Resolver.mavenLocal,
"Sonatype OSS" at "https://oss.sonatype.org/content/repositories/public"
)
但是当我尝试编译使用 gremlin scala 库或 io.Source 库的代码时出现错误。有人可以分享他们的构建文件或告诉我应该修改什么来修复它。 提前致谢。
所以,我试图编译这段代码:
import gremlin.scala._
import org.apache.commons.configuration.BaseConfiguration
import org.janusgraph.core.JanusGraphFactory
class Test1() {
val conf = new BaseConfiguration()
conf.setProperty("storage.backend", "inmemory")
val gr = JanusGraphFactory.open(conf)
val graph = gr.asScala()
graph.close
}
object Test{
def main(args: Array[String]) {
val t = new Test1()
println("in Main")
}
}
我得到的错误是:
错误:(1, 8) 未找到:对象 gremlin 导入 gremlin.scala._
错误:(10, 18) 值 asScala 不是 org.janusgraph.core.JanusGraph 的成员 验证图 = gr.asScala()
如果您转到 Gremlin-Scala GitHub page,您会看到当前版本是“3.3.1.1”,
Typically you just need to add a dependency on
"com.michaelpollmeier" %% "gremlin-scala" % "SOME_VERSION"
and one for the graph db of your choice to your build.sbt (this readme assumes tinkergraph). The latest version is displayed at the top of this readme in the maven badge.
APi 的主要版本发生变化也就不足为奇了 图书馆是不同的。如果我将您的第一个依赖项更改为
//libraryDependencies += "com.michaelpollmeier" % "gremlin-scala" % "2.3.0" //old!
libraryDependencies += "com.michaelpollmeier" %% "gremlin-scala" % "3.3.1.1"
然后你的示例代码会为我编译。