在Eclipse中使用Scala代码时,我无法使用F3和其他Eclipse控件。
要重现此问题:
使用Spark作业原型创建一个新的Maven项目(来自此处:https://github.com/jjmeyer0/spark-java-archetype)
将项目导入Eclipse(作为现有的Maven项目),并添加以下依赖项:
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-core_2.11</artifactId>
<version>2.2.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.apache.spark</groupId>
<artifactId>spark-mllib_2.11</artifactId>
<version>2.2.0</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-library</artifactId>
<version>2.11.11</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-reflect</artifactId>
<version>2.11.11</version>
</dependency>
<dependency>
<groupId>org.scala-lang</groupId>
<artifactId>scala-compiler</artifactId>
<version>2.11.11</version>
</dependency>
现在,从App.java
中生成的代码开始,如果我尝试在sc.parallelize
上执行F3,则会打开JavaSparkContext.class
文件,但不会在函数parallelize
上打开。另外,F3似乎不适用于该班级。
我尝试查看Spark Github上的代码,我意识到F3似乎可以很好地在.class
https://github.com/apache/spark/tree/master/core/src/main/java/org/apache/spark/api/java中而不是{{1 }} https://github.com/apache/spark/tree/master/core/src/main/scala/org/apache/spark/api/java
所以,我的问题是,如何设置Eclipse以将F3与Spark JAR一起正确使用?
答案 0 :(得分:0)
经过反复试验,以下内容在Eclipse Photon上对我有用。
使用光子,上述工作即可。但是,某些功能(例如函数/方法调用上的F3)仍然不起作用,但是至少F3在Scala Spark源代码中有效。
希望这对其他人也有帮助。