通过shell脚本排查jar包中类冲突】的更多相关文章

当我们在线上运行项目时,依赖很多jar包,有时候某个类的全限定名,在多个包中出现,而某个包中的类的方法没有,而且在类加载时,刚好加载了这个类,可能会报找不到方法,或者找不到类的异常,这种情况就可能是类冲突: 如: java.lang.NoSuchMethodError: com.google.common.base.Objects.toStringHelper(Ljava/lang/Object;)Lcom/google/common/base/Objects$ToStringHelper; 这…
本文采用的jar包是通过idea下maven打包的springboot项目. 写这个shell脚本是为了在linux下方便启动jar包时不用输入太多的shell命令,将启动脚本的一系列shell命令整理到一个xxx.sh中,每次启动此.sh文件就可以   linux下直接创建xxx.sh文件 vim start_syslogin.sh #!/bin/bash #jar包文件路径及名称(目录按照各自配置)APP_NAME=/opt/app/syslogin/syslogin.jar #日志文件路径…
可参考博客: Shell脚本中$0.$?.$!.$$.$*.$#.$@等的意义    https://blog.csdn.net/csgd2000/article/details/80396996 shell脚本[] [[]] -n -z 的含义解析                                      https://blog.csdn.net/keep_lcm/article/details/80551435 shell基本运算符 | 菜鸟教程              …
最近在搞一个shell脚本启动jar文件个关闭jar文件的东东.搞得我都蛋疼了.今天晚上终于弄好了 话说,小弟的linux只是刚入门,经过各方查资料终于搞定了.话不多说,下面开始上小弟写的shell脚本 #!/bin/bash #description: 启动重启server服务 #端口号,根据此端口号确定PID PORT= #启动命令所在目录 HOME='/usr/etc/server/java/server' #查询出监听了PORT端口TCP协议的程序 pid=`netstat -anp|g…
前提: eclipse, selenium, maven 把二次封装过的脚本做成jar包, 这样可以在新建工程里也调用封装过的方法. 实现步骤: 1. project 右键 => maven => run as  => maven install 2. 创建新project, 修改pom 文件,添加依赖(jar包的依赖).…
背景:使用maven很方便,但是引入冲突也很常见.后果很严重,各种不明实体找不到,所以需要对jar包的依赖有一个清晰的认识. 查看冲突 参考:用dependency:tree查看maven引入jar包的传递依赖 maven 树 查看依赖 查看jar包的传递依赖,最方便的方式就是打依赖树,使用mvn dependency:tree -Dverbose 改命令在执行时候回重新build一次 dependency:tree -Dverbose 使用如下命令查看单个jar包的依赖 #详细查看jar包依赖…
问题:在做项目时,遇到jar版本冲突的问题,并且老代码依赖不能用新jar包代替,要保证功能不变须要保证两个jar都能使用 思路:使用runtime 的exec 方式另启线程运行,然后返回结果 解决: 1):创建可运行的jar包,并创建入口main方法,方法实现新功能的调用与结果或异常的返回 public static void main(String[] args) { try { //接收参数 String privateKeyPath = args [0]; /* 业务逻辑 */ Syste…
引入:http://blog.csdn.net/sanzhongguren/article/details/71191290 在spring reference中提到一个解决spring jar包之间版本冲突的解决方案,原文如下 It is possible to accidentally mix different versions of Spring JARs when using Maven. For example, you may find that a third-party lib…
版本冲突的解决方案 [1]调节原则 [1]路径最短者优先原则 [2]路径相同时,先声明者优先原则 [2]排除原则:用于排除某项依赖的依赖jar包 <dependency> <groupId>javax.servlet</groupId> <artifactId>servlet-api</artifactId> <version>2.5</version> <exclusions> <exclusion&g…
在IDEA状态下查看项目依赖的关系 关系如下图 红色数据jar包冲突 在对应的依赖中出去去冲突依赖…