flink应用 代码编译是报 Static methods in interface require -target:jvm-1.8
val env: StreamExecutionEnvironment = StreamExecutionEnvironment.getExecutionEnvironment
val brokers: String = KafkaUtils.kafkaServer
val topic: String = KafkaUtilsTests.topicName
val group: String = "flink_test_gruop"
val source: KafkaSource[String] = KafkaSource.builder[String]
.setBootstrapServers(brokers).setGroupId(group)
.setTopics(topic)
.setDeserializer(KafkaRecordDeserializationSchema.valueOnly(new SimpleStringSchema()))
.setStartingOffsets(OffsetsInitializer.latest).build
val value: DataStream[String] = env.fromSource(source, WatermarkStrategy.noWatermarks[String], "StateMachineExampleSource")
value.print()
// trigger program execution
env.execute("State machine job")
具体异常:
[INFO] compiling 3 Scala sources and 2 Java sources to F:\learntotal\flink\workspace\MY_FLINK\target\classes ...
[ERROR] F:/learntotal/flink/workspace/MY_FLINK/src/main/scala/com/hg/bigdata/flink/stream/KafkaStreamTests.scala:23: Static methods in interface require -target:jvm-1.8
[ERROR] F:/learntotal/flink/workspace/MY_FLINK/src/main/scala/com/hg/bigdata/flink/stream/KafkaStreamTests.scala:24: Static methods in interface require -target:jvm-1.8
[ERROR] F:/learntotal/flink/workspace/MY_FLINK/src/main/scala/com/hg/bigdata/flink/stream/KafkaStreamTests.scala:25: Static methods in interface require -target:jvm-1.8
[ERROR] three errors found
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
解决:scala-maven-plugin插件中加入 -target:java-1.8
<!-- Scala Compiler -->
<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<executions>
<!-- Run scala compiler in the process-resources phase, so that dependencies on
scala classes can be resolved later in the (Java) compile phase -->
<execution>
<id>scala-compile-first</id>
<phase>process-resources</phase>
<goals>
<goal>compile</goal>
</goals>
<configuration>
<args>
<arg>-Xfatal-warnings</arg>
</args>
</configuration>
</execution>
</executions>
<configuration>
<jvmArgs>
<jvmArg>-Xms128m</jvmArg>
<jvmArg>-Xmx512m</jvmArg>
</jvmArgs>
<scalaVersion>${scala.vaersion}</scalaVersion>
<addScalacArgs>-target:jvm-1.8</addScalacArgs>
</configuration>
</plugin>
执行命令:mvn clean scala:compile scala:run package