*I followed the procedures instructed by https://cwiki.apache.org/confluence/display/SPARK/Contributing+to+Spark#ContributingtoSpark-IntelliJ. But problems still occurs which has made me a little bit annoyed.
My environment settings are:JAVA 1.7.0 Scala: 2.10.4 Spark:1.2.0, Intellij Idea 14.0.2, Ubuntu 14.04 Firstly I got the scala plugin correctly installed. I choosed maven-3, hadoop-2.4, scala-2.10 as my profiles when importing the project. After importing, I first turned on "View-Tool Windows-Maven Projects". I see the "hbase-hadoop1" is selected, but I had not chosen it in the import process. So I deselected it to leave the hadoop-2.4, maven-3, scala-2.10 to be the only three selected items in "Maven Projects-Profiles". According to the Wiki, the next step should be "Generate Sources and Update Folders For All Projects". I did so, and waited for some minutes to get the sub-projects prepared. Then I cleared the "Additional compiler options" in the "File-Settings-Build, Execution, Deployment-Compiler-Scala Compiler". Finally I choosed Build-reBuild project. However, the compiler failed with "value q is not a member of stringcontext" errors. * (partial screen shot) ------------------------------------------------------- /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/catalyst/src/main/scala/org/apache/spark/sql/catalyst/expressions/codegen/GenerateProjection.scala Error:(42, 21) value q is not a member of StringContext val lengthDef = q"final val length = $tupleLength" ^ Error:(54, 7) value q is not a member of StringContext q""" ^ Error:(66, 9) value q is not a member of StringContext q""" ^ Error:(83, 9) value q is not a member of StringContext q"if(isNullAt($iLit)) { null } else { ${newTermName(s"c$i")} }" ^ Error:(85, 7) value q is not a member of StringContext q"override def iterator = Iterator[Any](..$allColumns)" ^ Error:(88, 27) value q is not a member of StringContext val accessorFailure = q"""scala.sys.error("Invalid ordinal:" + i)""" ^ Error:(95, 9) value q is not a member of StringContext q"if(i == $ordinal) { if(isNullAt($i)) return null else return $elementName }" ^ Error:(97, 7) value q is not a member of StringContext q"override def apply(i: Int): Any = { ..$cases; $accessorFailure }" ^ Error:(106, 9) value q is not a member of StringContext q""" ^ Error:(117, 7) value q is not a member of StringContext q"override def update(i: Int, value: Any): Unit = { ..$cases; $accessorFailure }" ^ Error:(126, 11) value q is not a member of StringContext q"if(i == $i) return $elementName" :: Nil ^ Error:(130, 7) value q is not a member of StringContext q""" ^ Error:(143, 11) value q is not a member of StringContext q"if(i == $i) { nullBits($i) = false; $elementName = value; return }" :: Nil ^ Error:(147, 7) value q is not a member of StringContext q""" ^ Error:(157, 29) value q is not a member of StringContext case BooleanType => q"if ($elementName) 0 else 1" ^ Error:(158, 52) value q is not a member of StringContext case ByteType | ShortType | IntegerType => q"$elementName.toInt" ^ Error:(159, 26) value q is not a member of StringContext case LongType => q"($elementName ^ ($elementName >>> 32)).toInt" ^ Error:(160, 27) value q is not a member of StringContext case FloatType => q"java.lang.Float.floatToIntBits($elementName)" ^ Error:(162, 11) value q is not a member of StringContext q"{ val b = java.lang.Double.doubleToLongBits($elementName); (b ^ (b >>>32)).toInt }" ^ Error:(163, 19) value q is not a member of StringContext case _ => q"$elementName.hashCode" ^ Error:(165, 7) value q is not a member of StringContext q"if (isNullAt($i)) 0 else $nonNull" ^ Error:(168, 54) value q is not a member of StringContext val hashUpdates: Seq[Tree] = hashValues.map(v => q"""result = 37 * result + $v""": Tree) ^ Error:(171, 7) value q is not a member of StringContext q""" ^ Error:(181, 7) value q is not a member of StringContext q"if (this.$elementName != specificType.$elementName) return false" ^ Error:(185, 7) value q is not a member of StringContext q""" ^ Error:(195, 7) value q is not a member of StringContext q""" ^ Error:(210, 16) value q is not a member of StringContext val code = q""" ^ --------------------------------------------------------------------- * Then I tried http://stackoverflow.com/questions/26995023/errorscalac-bad-option-p-intellij-idea, which does not clear the "Additional compiler options", but change the -P in to -Xplugin. So now my "Additional Compiler Options" is like this "-Xplugin:/home/yaochunnan/.m2/repository/org/scalamacros/paradise_2.10.4/2.0.1/paradise_2.10.4-2.0.1.jar" Then I reBuild again with the following errors: * (partial screen shot) ---------------------------------------------------------------------- /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala Error:(169, 38) not found: value HiveShim Option(tableParameters.get(HiveShim.getStatsSetupConstTotalSize)) ^ Error:(177, 31) not found: value HiveShim tableParameters.put(HiveShim.getStatsSetupConstTotalSize, newTotalSize.toString) ^ Error:(292, 36) not found: value HiveShim val proc: CommandProcessor = HiveShim.getCommandProcessor(Array(tokens(0)), hiveconf) ^ Error:(304, 25) not found: value HiveShim val results = HiveShim.createDriverResultsArray ^ Error:(314, 11) not found: value HiveShim HiveShim.processResults(results) ^ Error:(418, 7) not found: value HiveShim HiveShim.createDecimal(decimal.toBigDecimal.underlying()).toString ^ Error:(420, 7) not found: value HiveShim HiveShim.createDecimal(decimal.underlying()).toString ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveInspectors.scala Error:(97, 7) not found: value HiveShim HiveShim.toCatalystDecimal( ^ Error:(123, 46) not found: value HiveShim case hdoi: HiveDecimalObjectInspector => HiveShim.toCatalystDecimal(hdoi, data) ^ Error:(156, 19) not found: value HiveShim (o: Any) => HiveShim.createDecimal(o.asInstanceOf[Decimal].toBigDecimal.underlying()) ^ Error:(210, 31) not found: value HiveShim case b: BigDecimal => HiveShim.createDecimal(b.underlying()) ^ Error:(211, 28) not found: value HiveShim case d: Decimal => HiveShim.createDecimal(d.toBigDecimal.underlying()) ^ Error:(283, 7) not found: value HiveShim HiveShim.getStringWritableConstantObjectInspector(value) ^ Error:(285, 7) not found: value HiveShim HiveShim.getIntWritableConstantObjectInspector(value) ^ Error:(287, 7) not found: value HiveShim HiveShim.getDoubleWritableConstantObjectInspector(value) ^ Error:(289, 7) not found: value HiveShim HiveShim.getBooleanWritableConstantObjectInspector(value) ^ Error:(291, 7) not found: value HiveShim HiveShim.getLongWritableConstantObjectInspector(value) ^ Error:(293, 7) not found: value HiveShim HiveShim.getFloatWritableConstantObjectInspector(value) ^ Error:(295, 7) not found: value HiveShim HiveShim.getShortWritableConstantObjectInspector(value) ^ Error:(297, 7) not found: value HiveShim HiveShim.getByteWritableConstantObjectInspector(value) ^ Error:(299, 7) not found: value HiveShim HiveShim.getBinaryWritableConstantObjectInspector(value) ^ Error:(301, 7) not found: value HiveShim HiveShim.getDateWritableConstantObjectInspector(value) ^ Error:(303, 7) not found: value HiveShim HiveShim.getTimestampWritableConstantObjectInspector(value) ^ Error:(305, 7) not found: value HiveShim HiveShim.getDecimalWritableConstantObjectInspector(value) ^ Error:(307, 7) not found: value HiveShim HiveShim.getPrimitiveNullWritableConstantObjectInspector ^ Error:(363, 51) not found: value HiveShim case w: WritableHiveDecimalObjectInspector => HiveShim.decimalTypeInfoToCatalyst(w) ^ Error:(364, 47) not found: value HiveShim case j: JavaHiveDecimalObjectInspector => HiveShim.decimalTypeInfoToCatalyst(j) ^ Error:(393, 30) not found: value HiveShim case d: DecimalType => HiveShim.decimalTypeInfo(d) ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveMetastoreCatalog.scala Error:(78, 11) not found: value HiveShim HiveShim.getAllPartitionsOf(client, table).toSeq ^ Error:(205, 7) not found: value HiveShim HiveShim.setLocation(tbl, crtTbl) ^ Error:(443, 28) not found: value HiveShim case d: DecimalType => HiveShim.decimalMetastoreString(d) ^ Error:(472, 53) not found: value HiveShim val totalSize = hiveQlTable.getParameters.get(HiveShim.getStatsSetupConstTotalSize) ^ Error:(490, 19) not found: value HiveShim val tableDesc = HiveShim.getTableDesc( ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/hiveUdfs.scala Error:(255, 18) not found: type HiveFunctionWrapper funcWrapper: HiveFunctionWrapper, ^ Error:(73, 53) not found: type HiveFunctionWrapper private[hive] case class HiveSimpleUdf(funcWrapper: HiveFunctionWrapper, children: Seq[Expression]) ^ Error:(57, 25) not found: type HiveFunctionWrapper HiveSimpleUdf(new HiveFunctionWrapper(functionClassName), children) ^ Error:(134, 54) not found: type HiveFunctionWrapper private[hive] case class HiveGenericUdf(funcWrapper: HiveFunctionWrapper, children: Seq[Expression]) ^ Error:(59, 26) not found: type HiveFunctionWrapper HiveGenericUdf(new HiveFunctionWrapper(functionClassName), children) ^ Error:(185, 18) not found: type HiveFunctionWrapper funcWrapper: HiveFunctionWrapper, ^ Error:(62, 27) not found: type HiveFunctionWrapper HiveGenericUdaf(new HiveFunctionWrapper(functionClassName), children) ^ Error:(214, 18) not found: type HiveFunctionWrapper funcWrapper: HiveFunctionWrapper, ^ Error:(64, 20) not found: type HiveFunctionWrapper HiveUdaf(new HiveFunctionWrapper(functionClassName), children) ^ Error:(66, 27) not found: type HiveFunctionWrapper HiveGenericUdtf(new HiveFunctionWrapper(functionClassName), Nil, children) ^ Error:(322, 18) not found: type HiveFunctionWrapper funcWrapper: HiveFunctionWrapper, ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveQl.scala Error:(1132, 15) not found: type HiveFunctionWrapper new HiveFunctionWrapper(functionName), ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/execution/InsertIntoHiveTable.scala Error:(44, 34) object HiveShim is not a member of package org.apache.spark.sql.hive import org.apache.spark.sql.hive.HiveShim._ ^ Error:(43, 8) object ShimFileSinkDesc is not a member of package org.apache.spark.sql.hive import org.apache.spark.sql.hive.{ ShimFileSinkDesc => FileSinkDesc} ^ Error:(76, 21) not found: type FileSinkDesc fileSinkConf: FileSinkDesc, ^ Error:(142, 23) not found: value HiveShim val tmpLocation = HiveShim.getExternalTmpPath(hiveContext, tableLocation) ^ Error:(143, 28) not found: type FileSinkDesc val fileSinkConf = new FileSinkDesc(tmpLocation.toString, tableDesc, false) ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/TableReader.scala Error:(141, 22) not found: value HiveShim val partPath = HiveShim.getDataLocationPath(partition) ^ Error:(298, 33) not found: value HiveShim row.update(ordinal, HiveShim.toCatalystDecimal(oi, value)) ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/TestHive.scala Error:(384, 3) not found: value HiveShim HiveShim.createDefaultDBIfNeeded(this) ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/execution/DescribeHiveTableCommand.scala Error:(29, 8) object HiveShim is not a member of package org.apache.spark.sql.hive import org.apache.spark.sql.hive.HiveShim ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/execution/HiveTableScan.scala Error:(89, 5) not found: value HiveShim HiveShim.appendReadColumns(hiveConf, neededColumnIDs, attributes.map(_.name)) ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/hiveWriterContainers.scala Error:(38, 34) object HiveShim is not a member of package org.apache.spark.sql.hive import org.apache.spark.sql.hive.HiveShim._ ^ Error:(37, 8) object ShimFileSinkDesc is not a member of package org.apache.spark.sql.hive import org.apache.spark.sql.hive.{ShimFileSinkDesc => FileSinkDesc} ^ Error:(174, 19) not found: type FileSinkDesc fileSinkConf: FileSinkDesc, ^ Error:(46, 19) not found: type FileSinkDesc fileSinkConf: FileSinkDesc) ^ Error:(220, 33) not found: type FileSinkDesc val newFileSinkDesc = new FileSinkDesc( ^ /home/yaochunnan/workspace/spark_source/spark-1.2.0/sql/hive/src/main/scala/org/apache/spark/sql/hive/parquet/FakeParquetSerDe.scala Warning:(34, 2) @deprecated now takes two arguments; see the scaladoc. @deprecated("No code should depend on FakeParquetHiveSerDe as it is only intended as a " + ^ ------------------------------------------------------------------------ *I thought it was the problem from Maven Profiles. So I tried reselecting hbase-hadoop1 or hive or hbase-hadoop2. The error still occurs. Please help me. This has annoyed me for a whole afternoon!* ----- Feel the sparking Spark! -- View this message in context: http://apache-spark-developers-list.1001551.n3.nabble.com/Spark-development-with-IntelliJ-tp10032p10163.html Sent from the Apache Spark Developers List mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@spark.apache.org For additional commands, e-mail: dev-h...@spark.apache.org