当前位置: 首页 > 面试题库 >

手动编辑罐子以更改包装名称

薛涛
2023-03-14
问题内容

我有一个来自外部来源的jar文件。jar中的所有类都在com.xyz包中。

我想将所有类都移到com.xyzold包中。

这是简单的操作,例如解压缩jar,将xzy文件夹重命名为xyzold并重新压缩它,还是我还需要修改每个类文件?

这是我的解决方案,使用Jar Jar Links

java -jar jarjar-1.4.jar process rules.txt google-collections-1.0.jar google-collections-old-1.0.jar

这是我的rules.txt文件的内容:

rule com.google.** com.googleold.@1

问题答案:

您可以使用Jar Jar
Links
来实现。同样,您也不需要您想要修改的类的源代码,因为程序在字节码级别上进行了修改(即,它直接修改.class文件。)



 类似资料:
  • 任何建议都会有帮助的!谢了!

  • 我正在使用shadowJar插件构建/创建我的fatJar。在我的身材里。格雷德尔我有这个 使用gradle shadowJar创建我的胖罐子。然而,创建的胖罐子的名称是一个简单的名称。全部是r100。罐子我想把它改成样本快照。r100部署。罐子如何使用ShadowJar覆盖jar名称。

  • 我想更改android应用程序的程序包名称。我想手动编辑源代码的所有文件。这能行吗?或者无论如何,我必须使用Android studio?

  • 问题内容: 我正在尝试创建包装另一个jar的OSGi服务。我将jar添加到项目,类路径和二进制构建中。我在Activator中注册了该服务,但是当消费包调用该服务时,我在包装jar上得到了java.lang.NoClassDefFoundError。有人知道我在做什么错吗? 提前致谢。 问题答案: 您是否正在导出使用者所需的软件包以及实施所需的所有软件包。消费者将需要导入将被引用的所有内容。 附带

  • 在过去的6个月里,我一直在从repl运行我的Clojure应用程序。 也就是说,每当我想运行应用程序时,我都会加载一个clojure repl,然后输入:(加载文件“src/run.clj”)。。。它运行我的应用程序。 然后,clojure加载了我所有的*。clj文件,编译并运行。 我最近换了莱恩。我想“提前编译/打包”我的代码,这样我就可以得到一个带有Main方法的jar,并通过“java…”直

  • 这个问题很简单,但是我花了两天时间尝试部署我的应用程序。到目前为止还没有。 我的样式只有一个css文件,当我执行jar时,找不到css(404)或者jar不会打包。 如这里所述:Spring Boot可执行jar结构“如果您的应用程序将被打包为jar,请不要使用src/main/webapp文件夹”和“您应该将静态资源放在src/main/resources中” 所以把css放在这里:src/ma