背景
当我们在使用第三方的jar包时,发现了对方在逻辑上的错误,需要通过修改源码来解决问题。
1.github上有源码
最好的情况就是对方将自己的代码开源在github上了,你可以直接选择对应版本的分支或者tag。手动对于相应出错的代码进行修改,重新打包即可。
2.在maven仓库发布了源码
有部分情况属于这种,下面我以文章:《Java读取OPC DA报错:org.jinterop.dcom.common.JIException: Access is denied. [0x80070005] 》中提到的场景为例,来说一下怎么操作。
这个文章提示我们可以通过修改 org.openscada.utgard
两行代码来完成这个操作,但是我们没有项目,应该如何来修改呢?
2.1.首先通过maven仓库搜索到jar包
比如我们通过在 MVN Repository 搜索,可以找到:OpenSCADA Utgard Library
2.2.下载源码和pom
这样我们就可以在本地创建一个maven项目,覆盖pom文件,把源码放在src文件夹下。然后就可以修改代码并重新打包了。