How to fix error: type mismatch when create graphframes with Scala API

I work with Spark2.3.2 and GraphFrames 0.7.0.
I have two dataframe: node2attrDf and edge2attrDf, to generate them code like:https://gist.github.com/superPershing/56928c4f5420ea6334d7a9f6e389bda5

And their schema like this:

scala> node2attrDf.printSchema
root
 |-- id: integer (nullable = true)
 |-- combined: array (nullable = true)
 |    |-- element: array (containsNull = true)
 |    |    |-- element: integer (containsNull = false)

scala> edge2attrDf.printSchema
root
 |-- src: integer (nullable = true)
 |-- dst: integer (nullable = true)
 |-- info: struct (nullable = false)
 |    |-- dstNeighbors: array (nullable = true)
 |    |    |-- element: long (containsNull = false)
 |    |-- J: array (nullable = true)
 |    |    |-- element: integer (containsNull = false)
 |    |-- q: array (nullable = true)
 |    |    |-- element: double (containsNull = false)

scala> node2attrDf.show(5)
+---+--------------------+
| id|            combined|
+---+--------------------+
|148|[[405, 3], [121, ...|
|463|[[131, 2], [213, ...|
|471|[[117, 7], [7, 6]...|
|496|[[134, 7], [127, ...|
|833|[[597, 4], [566, ...|
+---+--------------------+
only showing top 5 rows

scala> edge2attrDf.show(5)
+---+---+------------+
|src|dst|        info|
+---+---+------------+
|780|725|[[], [], []]|
|266|351|[[], [], []]|
|285|132|[[], [], []]|
|328|748|[[], [], []]|
|275|487|[[], [], []]|
+---+---+------------+
only showing top 5 rows

When I create new graphframes with the two dataframe:

val gDF = GraphFrame(node2attrDf, edge2attrDf)

error happens:

scala> val gDF = GraphFrame(node2attrDf, edge2attrDf)
<console>:31: error: type mismatch;
 found   : org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.DataFrame
    (which expands to)  org.apache.spark.sql.Dataset[org.apache.spark.sql.Row]
 required: org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.DataFrame
    (which expands to)  org.apache.spark.sql.Dataset[org.apache.spark.sql.Row]
       val gDF = GraphFrame(node2attrDf, edge2attrDf)
                            ^
<console>:31: error: type mismatch;
 found   : org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.DataFrame
    (which expands to)  org.apache.spark.sql.Dataset[org.apache.spark.sql.Row]
 required: org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.org.apache.spark.sql.DataFrame
    (which expands to)  org.apache.spark.sql.Dataset[org.apache.spark.sql.Row]
       val gDF = GraphFrame(node2attrDf, edge2attrDf)
                                         ^

It seems that found type and required type are the same. So why this error happens and how to fix it?