我一直在尝试使用将包含在 c++20 中的新实验功能“modules-ts”编写代码。我已经克隆了 gcc 分支(在此处找到:https : //gcc.gnu.org/wiki/cxx-modules),并且我正在尝试使用 modules-ts 来遵循该教程(在链接上),但是出现了 g++ 错误阻止我这样做:
g++:错误:无法识别的命令行选项“-fmodules-ts”
我试图查看 g++ 的版本,以确保它不是从另一个以前的版本读取的。答案是:
g++ (GCC) 10.0.0 20191029(实验性) 版权所有 (C) 2019 Free Software Foundation, Inc。这是免费软件;请参阅复制条件的来源。没有保修;甚至不是为了特定目的的适销性或适合性。
这是我尝试运行的命令:
g++ -fmodules-ts hello.cppm main.cpp
我想做一个简单的 Spark SQL 代码,读取一个名为 的文件u.data,其中包含电影评级,创建一个Datasetof Rows,然后打印数据集的第一行。
作为前提,我将文件读取到 a JavaRDD,并根据 a 映射 RDD ratingsObject(该对象有两个参数movieID和rating)。所以我只想打印这个数据集中的第一行。
我使用 Java 语言和 Spark SQL。
public static void main(String[] args){
App obj = new App();
SparkSession spark = SparkSession.builder().appName("Java Spark SQL basic example").getOrCreate();
Map<Integer,String> movieNames = obj.loadMovieNames();
JavaRDD<String> lines = spark.read().textFile("hdfs:///ml-100k/u.data").javaRDD();
JavaRDD<MovieRatings> movies = lines.map(line -> {
String[] parts = line.split(" ");
MovieRatings ratingsObject = new MovieRatings();
ratingsObject.setMovieID(Integer.parseInt(parts[1].trim()));
ratingsObject.setRating(Integer.parseInt(parts[2].trim()));
return ratingsObject;
});
Dataset<Row> movieDataset = spark.createDataFrame(movies, …Run Code Online (Sandbox Code Playgroud)