【发布时间】:2018-07-22 10:52:43
【问题描述】:
我想开始使用 Java 中的 Apache Spark。所以我开始关注this tutorial。在本教程中,他们展示了一个用 Eclipse IDE 编写并使用 Eclipse 的 Gradle 插件编译和运行的简单桌面应用程序。
我按照本教程进行操作,一切正常。这是他们的build.gradle 文件:
apply plugin: 'java-library'
repositories {
jcenter()
}
dependencies {
compileOnly 'org.apache.spark:spark-core_2.11:2.1.0'
testImplementation 'org.apache.spark:spark-core_2.11:2.1.0','junit:junit:4.12'
}
到目前为止一切顺利!但现在我真正需要的是能够在离线系统中编译和运行 Spark 应用程序。 所以我所做的就是搜索 org.apache.spark:spark-core_2.11:2.1.0 和 junit:junit:4.12 在jcenter 中并下载所有.jar 文件,然后在我的项目根目录中创建一个名为libs 的文件夹,然后按照this method 将所有这些.jar 文件添加到我的项目的构建路径中。
我修改了 build.gradle 文件如下:
apply plugin: 'java'
apply plugin: 'application'
//apply plugin: 'java-library'
repositories {
jcenter()
}
dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}
当我编译这个修改后的应用程序时,我在控制台中收到以下错误。问题是我做错了什么?如何解决这个问题?
Working Directory: /home/jason/WorkspaceOfGetStartedWithSparkJava/FirstApacheSparkProjectWithOfflineDependencies
Gradle User Home: /usr/share/gradle/bin
Gradle Distribution: Gradle wrapper from target build
Gradle Version: 4.3
Java Home: /usr/lib/jvm/java-8-oracle
JVM Arguments: None
Program Arguments: None
Build Scans Enabled: false
Offline Mode Enabled: false
Gradle Tasks: build
:compileJava/home/jason/WorkspaceOfGetStartedWithSparkJava/FirstApacheSparkProjectWithOfflineDependencies/src/main/java/main_package/SparkDriverProgram.java:21: error: cannot access Cloneable
conf.setAppName("Schneider");
^
class file for scala.Cloneable not found
/home/jason/WorkspaceOfGetStartedWithSparkJava/FirstApacheSparkProjectWithOfflineDependencies/src/main/java/main_package/SparkDriverProgram.java:22: error: cannot access Serializable
conf.setMaster("local");
^
class file for scala.Serializable not found
2 errors
FAILED
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':compileJava'.
> Compilation failed; see the compiler error output for details.
* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output.
* Get more help at https://help.gradle.org
BUILD FAILED in 1s
1 actionable task: 1 executed
【问题讨论】:
-
@user8371915 那个正在使用 Maven,但我没有。我现在也需要学习 Maven(我时间不够)吗?
标签: java eclipse apache-spark gradle