fat/assemblyjar有哪些外部依赖关系?

omqzjyyz  于 2021-06-28  发布在  Hive
关注(0)|答案(0)|浏览(209)

所以我们正在和sbt一起进行scala项目,我们遇到了一个关于胖jar的奇怪问题
我在本地计算机上创建了fat jar(称为x.jar),并运行了一些代码,这些代码使用hivejdbc在我们的hive机器上运行一些hive查询,一切正常,但是,当我将x.jar复制到另一个远程机器y(不是配置单元机器)并从那里运行代码(连接到同一端口上的同一配置单元机器)时,它失败了,出现了错误

java.sql.SQLException: org.apache.thrift.transport.TTransportException: java.net.SocketTimeoutException: Read timed out

我之所以使用“怪异”这个词,是因为我觉得胖jar不应该使用任何外部依赖关系,但所发生的事情的结果让我重新思考
这台机器和我的电脑都使用相同的scala版本。因为我用的是同一个胖jar,所以我不认为这是版本冲突的问题
我还尝试从头开始创建一个新项目,并为它创建了一个jar(不是胖jar),然后将该jar传递给y机器,并手动添加所需的jar作为其类路径的一部分。它成功地查询了hive机器,因此我也不认为这是连接问题
所以我有两个问题:
胖jar使用某种外部依赖吗?如果是,这是如何确定的?如果没有,你能帮我想一个不同的解释我提到的问题吗?
有人能推荐一些关于普通jar和胖jar的好读物吗?你应该什么时候使用每一个?
谢谢

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题