跳至主要內容

奇技淫巧:在没有源码的情况下,把 snapshot 转成 release 包

Java

奇技淫巧:在没有源码的情况下,把 snapshot 转成 release 包

背景

项目中依赖了一个旧的 snapshot.jar,有人提出要求必须使用 release.jar,不能使用 snapshot。

问题来了,该 jar 所属的源码不知所踪,那还怎么发布 release.jar 呢?这就是本文要解决的问题。

下载


首先我们登录仓库,输入 ArtifactId,找到对应的 snapshot jar 包,并点击进入详情。


找到关键的三个 jar:

  • x.jar
  • x-sources.jar
  • x.pom

分别点击进入详情

依次点击 Path,下载到本地。

修改


首先修改名字,如图所示。

再使用任意工具解压 x.jar,提取出两个文件夹。进入 META-INF


修改 MANIFEST.MF,把里面的 snapshot 字符串去掉(如果有的话)


再点击 maven 文件夹


修改 pom.xml、pom.properties 文件,把里面的 snapshot 字符串去掉。

上传

把前面解压出来的文件重新打包成 jar

jar cvf my-1.4.1.jar com META-INF

# you can also use zip 
# zip -r my-1.4.1.jar com META-INF

然后上传仓库

在Upload中,点击 maven-releases


把三个文件添加上去,点击 Upload。


可以看到,新的 release 版本的 jar 包已经在仓库中了,可以被安装使用了。

上次编辑于:
贡献者: levy