When I build my Scala-Spark project in Eclipse Oxygen (ubuntu 16.04), it returns me this issue in "Problems" console:
Symbol 'term <none>.typesafe.scalalogging' is missing from the classpath. This symbol is required by 'trait org.graphframes.Logging'. Make sure that term scalalogging is in your classpath and check for conflicting dependencies with `-Ylog-classpath`. A full rebuild may help if 'Logging.class' was compiled against an incompatible version of <none>.typesafe. Example.scala /FakeYelp/src/main/scala/bigdata/FakeYelp line 18 Scala Problem
Symbol 'term com.typesafe' is missing from the classpath. This symbol is required by 'trait org.graphframes.Logging'. Make sure that term typesafe is in your classpath and check for conflicting dependencies with `-Ylog-classpath`. A full rebuild may help if 'Logging.class' was compiled against an incompatible version of com. Example.scala /FakeYelp/src/main/scala/bigdata/FakeYelp line 18 Scala Problem
Symbol 'type <none>.slf4j.LazyLogging' is missing from the classpath. This symbol is required by 'trait org.graphframes.Logging'. Make sure that type LazyLogging is in your classpath and check for conflicting dependencies with `-Ylog-classpath`. A full rebuild may help if 'Logging.class' was compiled against an incompatible version of <none>.slf4j. Example.scala /FakeYelp/src/main/scala/bigdata/FakeYelp line 18 Scala Problem
Error is on:
val gFrame = GraphFrame(vertexDF, edgeDF)
How can fix this issue?
UPDATE This is my pom.xml maven configuration:
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/graphframes/graphframes -->
<dependency>
<groupId>graphframes</groupId>
<artifactId>graphframes</artifactId>
<version>0.5.0-spark2.1-s_2.11</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core_2.10 -->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.10</artifactId>
<version>2.1.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-sql_2.11 -->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-sql_2.11</artifactId>
<version>2.1.1</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.spark/spark-graphx_2.11 -->
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-graphx_2.11</artifactId>
<version>2.1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
You can't use ..._2.10
and ..._2.11
together. Maven has no idea about these suffixes being meaningful and so can't provide useful errors. Add a property and use _${scala.binary}
to switch dependencies together (and make sure it corresponds to the Scala version you are using).
There may be additional problems, but this needs to be fixed first.