当前位置: 首页 > news >正文

广东省网站备案wordpress 主题木马

广东省网站备案,wordpress 主题木马,免费自助建站哪个平台好,网站备案密码使用文章目录 背景三种修改方式1.POM中移除原jar中依赖的历史版本2.原jar它不使用pom依赖而是直接放在源码中再编译使用JarEditor 插件对源码进行修改(推荐)使用java-decompiler反编译后修改源码覆盖原class#xff08;不好用-不推荐直接跳过#xff09;提醒 参考资料-推荐阅读拓… 文章目录 背景三种修改方式1.POM中移除原jar中依赖的历史版本2.原jar它不使用pom依赖而是直接放在源码中再编译使用JarEditor 插件对源码进行修改(推荐)使用java-decompiler反编译后修改源码覆盖原class不好用-不推荐直接跳过提醒 参考资料-推荐阅读拓展 背景 在新代码中调用的高版本方法但是依赖的历史版本用的低版本存在调用方法不存在有可能你编译时通过但是调用时发现JVM依赖的版本是旧版本导致调用的新版方法发生异常。例如我下面的这个异常那么我们就需要调和这种依赖冲突。 java.lang.NoSuchMethodError: java.lang.reflect.Field[] org.apache.commons.lang3.reflect.FieldUtils.getAllFields(java.lang.Class)xxxx.core.domain.SplitFields(25)这种情况通常是我们依赖第三方jar或者其他团队提供的jar自身没有源码或者自己的历史版本源码实在不想动了。 或者我们希望在现有的jar中添加自己的方法或者修改现有jar中的依赖启动项目比如历史jar依赖的当前运行环境中的resource中的配置文件或者特定的文件路径比如d//config这种如果在centos环境或者在docer环境根本就无法加载到这些文件路径。因此需要我们手动修改源文件但是有没有源码的情况下的不得已而为之。 三种修改方式 1.POM中移除原jar中依赖的历史版本 如果原jar使用的pom.xml依赖我们可以使用exclusions排除该依赖当然也就不需要我们这里提到的修改原jar了 dependencygroupIdcom.alibaba.cloud/groupIdartifactIdspring-cloud-starter-alibaba-nacos-discovery/artifactIdexclusionsexclusiongroupIdcom.netflix.ribbon/groupIdartifactIdribbon/artifactId/exclusion/exclusions/dependency2.原jar它不使用pom依赖而是直接放在源码中再编译 这种情况使用上面的排除是没办法的如下图org.apache.commons.lang3的源码它给直接合到它的项目中了而不是使用的依赖pom加载这种方式你只能通过本文的方式手工清理这种强依赖。 方法如下: 使用rar解压工具打开文件找到对应的org.apache.commons.lang3,直接删除即可 切换到META-INF\maven下找到 找到对应的commons-lang3直接删除 如此重新添加到仓库中或者放入项目的lib下面即可解除旧版本的依赖 使用JarEditor 插件对源码进行修改(推荐) IDE安装完 JarEditor 后右键点击项目中的 .class 文件在反编译界面可以切换到 JarEditor 的 tab 页面方便对 JAR 文件进行编辑。 对于外部 JAR 文件可以通过 File - Project Structure - Libraries - Add Library 来添加外部 JAR并在项目视图中对其进行反编译和编辑操作, 如下图我对我遇到的依赖jar中的旧版本代码进行修改增加新版本中新的方法如下然后保存即可覆盖源jar中的文件 target选择JDK版本8即可 保存后我们关闭编辑页面重新双击打开jar中的FieldUtils我们可以看到它已经有我们上面添加的方法代码块了。 使用java-decompiler反编译后修改源码覆盖原class不好用-不推荐直接跳过 以上都不行那就只能修改原class了比如写死的加载路径或者已经无法再外面满足的配置文件地址等等。 jar解压jar拿到源class先看通用命令 #解压当前文件到当前目录jar -xvf .\MQSDK1.6.1.jar#重新压缩当前路径下的所有文件为 MQSDK1.6.1.jarjar cvfM0 MQSDK1.6.1.jar ./*比如这里我们看到了需要修改这个代码rg.git.gr.modules.clm.controller.company.CompanyApplyController 首先创建或者直接使用现有的项目在src下面新建一个同名同目录的类文件org.git.gr.modules.clm.controller.company.CompanyApplyController目的是编译后后它的包路径和文件名方法名依然和原来一样不会造成代码冲突和异常 然后使用java-decompiler反编译工具找到原jar解压路径种对应类复制里面的内容信息到自己新增的类中修改新类的源码后重新编译使用编译后的class文件覆盖原解压的jar中的对应文件。 提醒 以上修改原jar的方式如果使用的pom加载记得都要修改版本号后提交到仓库中不然下次拉取可能还是原来的版本内容。 如果使用 外部加载lib的方式则保留好修改后的jar资源就可以了。 参考资料-推荐阅读拓展 告别繁琐反编译IDEA中轻松反编译与修改Jar包 https://datamining.blog.csdn.net/article/details/142311328
http://www.dnsts.com.cn/news/101732.html

相关文章:

  • 肇庆市专注网站建设平台企业做网站的痛点有哪些
  • seo与网站建设的关联wordpress 积分标签
  • 芜湖市建设工程质监站网站比较好的海报设计网站
  • 如何做一个购物网站页面酒店行业网站建设方案
  • 大悟县城乡建设局网站wordpress漏洞挖掘
  • 网站建设总结工业和信息部网站备案
  • 济南市高新技术官方网站开发区中国建筑设计研究院
  • 湛江市建网站游戏小程序代理
  • 购物网站静态页面模板网站建设制作设计平台
  • 建立企业网站的目的天猫网站平面广告
  • 当涂 微网站开发公司邓州市建设局网站
  • 建设一个网站用什么搭建美工做兼职在那个网站
  • 广州游戏网站建设北京制作小程序
  • 帝国cms怎么做音乐网站wordpress加qq和微信插件下载
  • 做汽车价格的网站lamp网站怎么建设
  • 免费空间网站php建设企业网站需要了解什么
  • 创建自己的网站要钱吗在线搜索引擎
  • 营销网站科技电子商务书店网站设计实验
  • 郑州网站做网站怎么查那家网络公司做的所以网站
  • 盈佳国际天天做赢家网站辽宁千山科技做网站怎么样
  • 苏州网站建设托管如何在网上推广信用卡
  • 网站建设技术人员wordpress xml文件分割器
  • 网站出现风险如何处理网站建设公司工作岗位说明书
  • 网站开发技术应用领域苏宁易购网站建设的不足之处
  • 网站建设需要的费用科技为了上大学上交可控核聚变
  • 织梦网站源文件没有style文件夹怎么修改网站背景郑州中航软件开发有限公司
  • 网站建设与运营财务报表90设计怎么免费下载
  • 绍兴做外贸网站的公司中国建设银行北京市分行网站
  • 网站做一年了没做301北京WordPress爱好者
  • 专业网站是什么意思建设规范文件在哪个网站发布