代码之家  ›  专栏  ›  技术社区  ›  programoholic

从jar文件替换单个文件

  •  0
  • programoholic  · 技术社区  · 6 年前

    我需要从jar文件中替换一个类文件。jar文件很大,每次我都不想提取它并手动替换。我想把这个过程自动化。有人能帮我一下吗? 当jar文件被提取时,将创建以下文件夹:

    1. 提供
    2. 通用域名格式

    我需要进入“com/cgp/f1/cmmi/”文件夹并替换其中的类文件。

    我试过的事情:

    1. zip file.jar com/cgp/f1/cmmi/services.class Services.class
    2. jar uf file.jar com/cgp/f1/cmmi/ services.class
      jar -uf file.jar com\cgp\f1\cmmi\ services.class
      jar uf file.jar com/cgp/f1/cmmi/services.class services.class

    我得到的错误是:

    使用jar命令时
    COM\CGP\F1\CMMI\:没有这样的文件或目录

    使用zip命令时:
    zip警告:名称不匹配:com\cgp\f1\cmmi\services.class

    有人能告诉我哪里出错了吗?

    1 回复  |  直到 6 年前
        1
  •  0
  •   Carlos Nantes    6 年前

    也许 jar -uf 在这里找到可以帮助您: How to update one file in a zip archive

    如果可以选择图形应用程序,则可以使用winrar或7-zip替换类。您不需要提取jar文件就可以实现这一点。只需打开其中一个应用程序的jar,转到要替换的类文件所在的de目录,拖放新文件以替换旧文件并保存。