由提交storm项目jar包引发对jar的原理的探索
java.lang.RuntimeException: Found multiple defaults.yaml resources.
You're probably bundling the Storm jars with your topology jar.
[jar:file:/home/hadoop/app/storm/lib/storm-core-0.9.6.jar!/defaults.yaml,
jar:file:/home/hadoop/stormApi-wordcount-1.0-SNAPSHOT-jar-with-dependencies.jar!/defaults.yaml]
这里说明stom集群环境中有storm的jar包,我们提交的jar包里面也包含storm的jar包,在读取配置文件时,发现有一样的文件冲突了导致启动错误。
新浪微博:intsmaze刘洋洋哥
package cn.intsmaze; public class A { public static void main(String[] args) { System.out.println(args[0]); System.out.println("java工程打jar包"); } }package cn.intsmaze; import java.util.HashMap; import java.util.Map; import redis.clients.jedis.Jedis; public class demo { public static void main(String[] args) { System.out.println("java工程调用第三方jar包"); Jedis jedis = new Jedis("localhost", 6379); Map map=new HashMap(); map.put("11", "1"); d.jedis.hmset("33", map); d.jedis.close(); } }
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
![](/assets/blank.gif)
Manifest-Version: 1.0
Main-Class: com.Task
Class-Path: lib/dom4j-1.6.1.jar lib/jaxen-1.1-beta-7.jar
注意:
<1> manifest.mf文件最后一行必须是一个空行。 <2> lib/dom4j-1.6.1.jar和lib/jaxen-1.1-beta-7.jar之间用一个空格隔开。 <3>每个冒号后有一个空格。
package cn.intsmaze; public class A { public static void main(String[] args) { System.out.println(args[0]); System.out.println("java工程打jar包"); } }package cn.intsmaze; import java.util.HashMap; import java.util.Map; import redis.clients.jedis.Jedis; public class demo { public static void main(String[] args) { System.out.println("java工程调用第三方jar包"); Jedis jedis = new Jedis("localhost", 6379); Map map=new HashMap(); map.put("11", "1"); d.jedis.hmset("33", map); d.jedis.close(); } }
<dependencies> <dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.7.3</version> </dependency> </dependencies>
<build> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>cn.intsmaze.demo.RedisDemo</mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> </plugins> </build>
<dependencies> <dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-core</artifactId> <version>0.9.5</version> </dependency> </dependencies>
<dependencies> <dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-core</artifactId> <version>0.9.5</version> </dependency> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.27</version> </dependency> </dependencies> <build> <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> <archive> <manifest> <mainClass>cn.intsmaze.helloworld.WordCountTopologyMain</mainClass> </manifest> </archive> </configuration> <executions> <execution> <id>make-assembly</id> <phase>package</phase> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.7</source> <target>1.7</target> </configuration> </plugin> </plugins> </build>
java.lang.RuntimeException: Found multiple defaults.yaml resources. You're probably bundling the Storm jars with your topology jar. [jar:file:/home/hadoop/app/storm/lib/storm-core-0.9.6.jar!/defaults.yaml, jar:file:/home/hadoop/stormApi-wordcount-1.0-SNAPSHOT-jar-with-dependencies.jar!/defaults.yaml]
<dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-core</artifactId> <scope>provided</scope>期望JDK、容器或使用者会提供这个依赖 <version>0.9.5</version> </dependency>
转载于:https://www.cnblogs.com/intsmaze/p/5998646.html
由提交storm项目jar包引发对jar的原理的探索相关推荐
- 关于web项目引入jstl.jar包和standard.jar包后存在的问题
项目场景: 自我研究jstl中 问题描述 导入jstl.jar包和standard.jar包,并且添加为库,在jsp文件中也写了引入代码 <%--引入标签库--%> <%@ tagl ...
- java调用jar并传参,Java项目导出为jar包+导出第三方jar包+使用命令行调用+传参
Java项目导出为jar包+导出第三方jar包+使用命令行调用+传参 一.打包 情况1:不需要向程序传参数,并且程序没有使用第三方jar包 Eclipse上导出jar: 然后选择一个java文件作为入 ...
- Java项目打成Jar包后执行Jar包指定方法
最近在考虑跳个槽的问题,也看了几个面试,其中有一个面试让我本地写一个蛇形矩阵,打成Jar包,并且可以使用java -jar 命令启动,本人基础不太牢固,这个问题我找了半天才找到解决的办法,面试题答完直 ...
- java jar包资源文件_深入jar包:从jar包中读取资源文件
我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看 ...
- IntelliJ IDEA for Mac如何添加jar包/如何导入jar包/导包
文章目录 如何将 jar 包添加到已存在的资源库中 将 jar 包添加到项目级别的资源库中 将 jar 包添加到全局级别的资源库中 将 jar 包添加到模块级别的资源库中 创建资源库 创建模块级别的资 ...
- [Java基础] 深入jar包:从jar包中读取资源文件
转载: http://hxraid.iteye.com/blog/483115?page=3#comments 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的 ...
- spring2.0和spring2.5及以上版本的jar包区别 spring jar 包详解
spring jar 包详解 spring.jar是包含有完整发布的单个jar包,spring.jar中包含除了 spring-mock.jar里所包含的内容外其它所有jar包的内容,因为只有在开发环 ...
- 深入jar包:从jar包中读取资源文件
我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看 ...
- 使用jar命令替换jar包中的jar文件
替换jar包中的jar文件(一般jar不会压缩使用-0表示不压缩) 1. 根据文件名,查询出文件目录 jar -tvf xxxx.jar | grep jdbc.jar 2. 将需要修改的文件,解压出 ...
最新文章
- 2019 半导体领袖新年展望(一)| 半导体行业观察
- python安装文件乱码_python输出到文件乱码如何解决
- AssetBundle系列——共享资源打包/依赖资源打包
- LiveVideoStack上海2019八折截止最后一周
- 命令执行——命令执行漏洞及(四)
- Live Migrate 操作 - 每天5分钟玩转 OpenStack(42)
- camunda 流程执行追踪_流程引擎为什么选 Camunda
- scott用户对象维护
- MMKV_Android数据持久化方案调研-MMKV SP REALM ROOM WCDB...
- 计算机网络课程思政教学目标,计算机学院举行课程思政示范教学活动
- ThreeJS的性能优化方面
- 【python初学者日记】输入年份:判断是否闰年:闰年:yyyy是闰年,这年有366天;yyyy是平年,这年有365天
- PHP 大数据处理思路
- lowB三人组---冒泡排序原理和实现
- flvplayer.swf flv视频播放器使用方法
- 实现条码枪的无焦点扫码
- 用Qt搭建图书管理系统(三)
- 架构师小跟班:SSL证书免费申请及部署,解决页面样式错乱问题
- BuildAdmin后台管理系统入门分析:01
- linux tail命令语法