- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有以下 spark 程序,我试图运行它的目的是将 copybok 文件转换为 Parquet 文件。(Cobrix 的程序链接 https://github.com/AbsaOSS/cobrix)在这个我只是想运行一个名为 CobolCopybookExample1.scala 的文件(这是在 cobrix-master\cobrix-master\spark-cobol\src\main\scala\za\co\absa\cobrix\spark\cobol\examples 中)
它的源文件copybook文件在(cobrix-master\cobrix-master\examples\example_data)
我们知道 Spark 没有提供用于 Copybook 数据转换的内置库。为此,有一个名为 Cobrix 的开源库,它已通过 Apache Spark Foundation 认证,这就是我在我的程序中使用的库。
按照我到目前为止所遵循的步骤并出现错误。
我需要 4 个先决条件 jar 文件,它们是
spark-cobol-0.3.0.jar
cobol-parser-0.3.0.jar
scodec-core_2.11-1.10.3.jar
scodec-bits_2.11-1.1.4.jar
1).我下载了这些 jar 并将其保存在我的 VM 桌面文件夹 Cobol 中
2).我从 jar 位置使用以下命令启动了 spark-shell。启动成功。
spark-shell --master yarn --deploy-mode client --driver-cores 4 --driver-memory 4G --jars spark-cobol-0.3.0.jar,cobol-parser-0.3.0.jar,scodec-core_2.11-1.10.3.jar,scodec-bits_2.11-1.1.4.jar
3) 现在我需要导入 2 个库才能启动我的 spark Reader 功能。所以我做了
import org.apache.spark.sql.{SaveMode, SparkSession}
import za.co.absa.cobrix.spark.cobol.utils.SparkUtils
4) 现在我必须启动我的 spark DF 并遇到我在这封电子邮件中提到的错误。在我看来这是一个环境错误,但我想听取您的建议。我正在努力解决它们。
val df = spark.read
.format("za.co.absa.cobrix.spark.cobol.source")
.option("copybook", "file:///home/bigdata/Desktop/Cobol/example_data/raw_file.cob")
.load("file:///home/bigdata/Desktop/Cobol/example_data/raw_data")
然后我得到这个错误
java.lang.NoClassDefFoundError: java/time/temporal/TemporalAccessor
at za.co.absa.cobrix.spark.cobol.reader.fixedlen.FixedLenNestedReader.loadCopyBook(FixedLenNestedReader.scala:76)
at za.co.absa.cobrix.spark.cobol.reader.fixedlen.FixedLenNestedReader.<init>(FixedLenNestedReader.scala:42)
at za.co.absa.cobrix.spark.cobol.source.DefaultSource.createFixedLengthReader(DefaultSource.scala:83)
at za.co.absa.cobrix.spark.cobol.source.DefaultSource.buildEitherReader(DefaultSource.scala:70)
at za.co.absa.cobrix.spark.cobol.source.DefaultSource.createRelation(DefaultSource.scala:54)
at za.co.absa.cobrix.spark.cobol.source.DefaultSource.createRelation(DefaultSource.scala:45)
at org.apache.spark.sql.execution.datasources.DataSource.resolveRelation(DataSource.scala:330)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:152)
at org.apache.spark.sql.DataFrameReader.load(DataFrameReader.scala:135)
... 50 elided
Caused by: java.lang.ClassNotFoundException: java.time.temporal.TemporalAccessor
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
... 59 more
我还附加了我的 Scala 程序
最佳答案
您能否尝试使用 SBT 或 Maven 重建您的 Scala 项目,here是一篇有趣的文章。您需要一个 Fat JAR(这样您就不需要在 spark submit
中使用 --jars
)。该错误似乎是因为其中一个 JAR 依赖于另一个 JAR。例如,检查 Cobol Parser 是否需要一些编译依赖项才能正常工作。
关于apache-spark - 为什么加载 Cobol Copybook 文件失败并显示 "ClassNotFoundException: java.time.temporal.TemporalAccessor"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54006797/
我的应用在尝试访问外部依赖项时遇到 NoClassDefFoundError,但仅限于作为 jar 运行时。 使用 Intellij,我有一个带有主类的简单应用程序,其中包含一些对外部依赖项(例如 s
我收到以下异常: java.lang.ClassNotFoundException: org.jboss.resteasy.plugins.server.servlet.ResteasyBootstr
我正在尝试使用eclipse和tomcat调试solr4.6源代码。我收到错误消息:HTTP 状态 500 - {msg=SolrCore 'collection1' 由于初始化失败而不可用:[sch
我是新来的,很抱歉我的英语不好;)。 我尝试使用以下代码在 java 中加载插件 jar: package testprogramm; import java.io.File; import java
我重新安装了 ADT Bundle,因为我在更新 eclipse 后遇到了一些问题。 现在,当我想测试我的应用程序时,出现以下异常: 06-05 10:33:35.770: E/AndroidRunt
我浏览过现有的帖子,这些帖子处理在 Eclipse 中的 Tomcat 下运行 Java Web 应用程序的 ClassNotFoundException。 我无法提供源代码和配置 Artifact
我忙于我的应用一个多星期,突然: 11-12 07:59:17.860 1653-1653/nl.test.myapp E/AndroidRuntime﹕ FATAL EXCEPTION: ma
我的应用程序有问题,昨天一切正常,但今天我更新了 sdk,现在当我尝试运行我的应用程序时,出现这样的错误 05-21 00:14:19.285: W/dalvikvm(7061): Unable t
我正在阅读 JPA docs在 Spring ,我正在尝试重组我的代码。 我现在所拥有的: BrewerRepository @Repository public class BrewerReposi
我想像 BalusC's example 一样实现 fileUpload . 不幸的是,我已经在努力声明 servlet。 Extensions Filter javax.faces
在某些机器上运行这个小程序不起作用,但在其他机器上它工作得很好。在所有情况下看起来都安装了 JRE 1.6.0_26。 var attributes = {codebase:'http://kas
我将跟随这个非常简单的教程(http://www.tutorialspoint.com/hadoop/hadoop_mapreduce.htm)一起学习,直到我尝试运行Java文件为止,一切运行良好。
我看到了帖子,并按照流程进行了操作。但这没有用。 ClassNotFoundException, while running example job of Hadoop 请帮助我。 创建的 mapre
我尝试在cloudera quickstart vm上为hadoop运行Mahout Kmeans示例。我在这里读link to clouudera block和这里stack overflow po
我有一个mapreduce程序,其中我使用Hcatalog从Hive表'A'中获取带有HcatInputFormat的详细信息,对其进行处理,然后使用HcatOutput格式将其写回到Hive表'B'
我是激发应用程序编程的新手,因此在这里为这个基本的编程而苦苦挣扎。 我有 scala ide 并附加了来自最新 hadoop 和 spark 发行版的相关 jar 文件。我正在使用的只有一个基本的 s
我正在尝试在本地模式下运行Spark示例,但是正在获取以下堆栈跟踪: Exception in thread "main" java.lang.NoClassDefFoundError: org/ap
我有以下代码: // Test TODO remove try { System.out.println(System.getProperties().getPrope
我有以下文件: src/my_proj/myns.clj: (ns my-proj.myns) (defrecord MyRecord [a b c]) 测试/my_proj/myns_test.c
我试图让应用程序动态加载某些类,然后调用启动方法,但问题是,由于 ClassLoader 不同,一个类无法调用另一个类的方法,但是正如我已经用 google 搜索的那样,我用父类创建了两个类加载器。这
我是一名优秀的程序员,十分优秀!