当前位置: 首页 > 知识库问答 >
问题:

Spark Java错误:源代码1.5[重复]中不支持lambda表达式

东门晓博
2023-03-14
JavaRDD<String> lines = sc.textFile(logFile);
JavaPairRDD<String, Integer> pairs = lines.mapToPair(s -> new Tuple2(s, 1));

但是下面的代码工作得非常好。你能帮我找出原因吗?

JavaRDD<String> lines = sc.textFile(logFile);
JavaPairRDD<String, String> prodPairs = lines.mapToPair(new PairFunction<String, String, String>() {
            public Tuple2<String, String> call(String s) {
                String[] prodSplit = s.split(",");
                return new Tuple2<String, String>(prodSplit[2], prodSplit[0]+","+prodSplit[1]+","+prodSplit[2]); 
            }
        });

共有1个答案

鱼阳伯
2023-03-14

你在用Maven吗?

默认情况下,maven使用java 1.5的源代码和目标编译:

还要注意,目前默认的source设置是1.5,默认的target设置是1.5,与运行Maven的JDK无关。如果要更改这些默认值,应该按照设置Java编译器的-source和-target中的描述设置source和target。来源

<build>
    <plugins>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-compiler-plugin</artifactId>
            <version>3.2</version>
            <configuration>
                <source>1.8</source>
                <target>1.8</target>
            </configuration>
        </plugin>
    </plugins>
</build>
 类似资料:
  • 我使用maven构建我的项目。 我很困惑--mven看到我使用的是Java8。 pom.xml:

  • 我在Eclipse中打开了maven项目。但当我做清洁和安装,我得到以上的错误。 我将构建路径改为使用SE1.8,我的编译器也配置为使用1.8。您可以在下面的屏幕截图中看到这一点。 我在project explorer中也看到了小红叉。你可以在下面的图片中看到这一点。 我不确定为什么maven在Eclipse中配置为使用1.8时使用SE1.7。

  • 知道为什么会这样吗?任何线索。 PS:在Stack中有几个类似的问题,但没有一个解决这个问题。请理解问题之前,您标记复制。

  • 问题内容: 我使用Maven构建我的项目。 我有以下配置: D:\ freelance \ polyndrom> mvn -verion Apache Maven 3.2.3(33f8c3e1027c3ddde99d3cdebad2656a31e8fdf4; 2014-08-12T00:58:1 0 + 04:00)Maven主页:C:\ Program Files \ apache \ apac

  • 很高兴知道java在java版本8中引入了Lambda表达式。 我当时在Android Studio工作。并且我注意到显示了下划线并变成了灰色,如下所示: 因此,我在该行执行了操作,并找到了用Lambda表达式替换代码的选项,如下所示: 其结果如下: 运行代码后,它显示了以下错误: 错误:(160,69)错误:source 1.7中不支持lambda表达式(使用source 8或更高版本启用lam

  • 我在构建Cordova Android应用程序时收到了这个错误信息。 错误:(159,66)错误:source 1.7中不支持lambda表达式(使用source 8或更高版本启用lambda表达式) 在我的build.gradle(模块android)和build.gradle(模块CordovaLib)上设置了以下compileOptions,如下所示: