Update Storm三种打包方式对比分析.md

This commit is contained in:
heibaiying 2019-05-05 16:06:59 +08:00 committed by GitHub
parent 727e0795d6
commit 8f1a8fe5e4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -84,7 +84,7 @@ maven-assembly-plugin是官方文档中介绍的打包方法来源于官方
- 使用maven-assembly-plugin进行打包因为maven-assembly-plugin会把所有的依赖一并打包到最后的JAR中
- 排除掉Storm集群环境中已经提供的Storm jars。
maven-assembly-plugin的使用非常简单只需要在POM.xml中引入即可并且在\<descriptorRef>标签指定打包格式为`jar-with-dependencies`那么就剩下一个问题如何排除Storm jars
maven-assembly-plugin的使用非常简单只需要在POM.xml中引入即可并且在\<descriptorRef>标签指定打包格式为`jar-with-dependencies`此时还有一个问题如何排除不需要的JAR包(如Storm jars)
### 3.2 排除Storm jars
@ -218,9 +218,7 @@ assembly.xml文件内容如下
>
>If you are using maven to create your topology jar, you should use the following `maven-shade-plugin` configuration to create your topology jar。
这里第一句就说的比较清晰在集成HDFS时候你必须使用maven-shade-plugin来代替maven-assembly-plugin否则会抛出
RuntimeException异常。
这里第一句就说的比较清晰在集成HDFS时候你必须使用maven-shade-plugin来代替maven-assembly-plugin否则会抛出RuntimeException异常。
采用maven-shade-plugin打包有很多好处比如你的工程依赖很多的JAR包而被依赖的JAR又会依赖其他的JAR包这样,当工程中依赖到不同的版本的 JAR时并且JAR中具有相同名称的资源文件时shade插件会尝试将所有资源文件打包在一起时而不是和assembly一样执行覆盖操作。
@ -332,4 +330,4 @@ jar:file:/usr/appjar/storm-hdfs-integration-1.0.jar!/defaults.yaml]
## 参考资料
关于maven-shade-plugin的更多配置可以参考 [maven-shade-plugin 入门指南](https://www.jianshu.com/p/7a0e20b30401)
关于maven-shade-plugin的更多配置可以参考 [maven-shade-plugin 入门指南](https://www.jianshu.com/p/7a0e20b30401)