用文件夹中的文件替换jar中的文件
Replacing files in jar by files in folder
我有一个目录 update,其结构与 JAR 文件相同 Application.jar。现在我想(以编程方式)用更新文件夹中的文件替换 Application.jar 中的所有文件。假设我的目录和 jar 文件都具有以下结构:
Application.jar / update
- TestDir
- text2.txt
- text1.txt
当使用 jar uf Application.jar update/TestDir/text2.txt
时,它会在 Application.jar 中创建一个新目录 - 更新 - 并且将从那里添加所有内容,使用绝对路径时更糟(创建整个 C:\ 结构在 jar 文件中)。我怎样才能保留结构,有什么方法可以将 pathToUpdate\update 标记为根吗?我知道有-C参数,但是我没看懂
你有两个选择。
首先将工作目录更改为update
,以便'update'文件的相对路径与您在jar中想要的相匹配:
cd update
jar uf ../Application.jar TestDir/text2.txt
使用-C选项:
jar uf Application.jar -C update TestDir/text2.txt
-C 选项可能要求您执行以下操作:jar Application.jar -C update update/TestDir/text2.txt
。
一般来说,我建议第一种选择;一旦你开始使用例如第二个变得棘手*
等
我有一个目录 update,其结构与 JAR 文件相同 Application.jar。现在我想(以编程方式)用更新文件夹中的文件替换 Application.jar 中的所有文件。假设我的目录和 jar 文件都具有以下结构:
Application.jar / update
- TestDir
- text2.txt
- text1.txt
当使用 jar uf Application.jar update/TestDir/text2.txt
时,它会在 Application.jar 中创建一个新目录 - 更新 - 并且将从那里添加所有内容,使用绝对路径时更糟(创建整个 C:\ 结构在 jar 文件中)。我怎样才能保留结构,有什么方法可以将 pathToUpdate\update 标记为根吗?我知道有-C参数,但是我没看懂
你有两个选择。
首先将工作目录更改为
update
,以便'update'文件的相对路径与您在jar中想要的相匹配:cd update jar uf ../Application.jar TestDir/text2.txt
使用-C选项:
jar uf Application.jar -C update TestDir/text2.txt
-C 选项可能要求您执行以下操作:jar Application.jar -C update update/TestDir/text2.txt
。
一般来说,我建议第一种选择;一旦你开始使用例如第二个变得棘手*
等