有没有一种方法可以运行需要类路径的缩放作业,而无需使用libjars并将每个jar显式地用逗号分隔。
我想将我所有的jar放在一个lib中,而不是只写-libjars =。/ lib / *而不是所有的jar。
有经典的方法吗?
使用烫金版
scalding-core_2.10
0.8.5
hadoop版本2.0.0-cdh4.5.0
压力
我正在使用maven来打包jar和lib
最佳答案
您应该创建一个“胖 jar ”,其中包含要通过libjars添加的依赖项以及主类。
可以在here中查看一个带有缩放和相关性的sbt项目的具体示例。在Maven中,您应该使用mvn assembly:first
添加“程序集插件”和程序包(如果我记得的话)。期望上述两种方法都不容易,因为如果要使用cloudera jar中已经存在的其他jar(例如,具有不同版本),您将遇到依赖关系。 I wrote关于几年前类似的事情,尽管它可能已经过时了,但是您可以尝试一下。