1

我正在尝试将以下 Linux JAR 命令转换为在 CMD 中作为单线运行:

$ jar cvf JarName.jar */*.class

我发现很难做到,因为 CMD / Powershell 中没有文件扩展,就像在基于 *nix 的 shell 中一样。我知道我可以通过使用适当的类文件创建清单来做到这一点,但是一个衬里看起来非常好和简单。我尝试过使用 DIR 和管道,但似乎类文件是参数,而不是来自 STDIN。我也尝试过使用 FOR 命令,但我不知道如何使它成为单行。

我错过了一些明显的东西吗?

非常感谢!植物女士

4

2 回答 2

1

如果文件夹树仅包含您想要包含在 .jar 文件中的文件,您可以执行以下操作:

jar cvf JarName.jar .

否则,最简单的方法可能是仅使用类文件复制文件夹结构,robocopy然后jar复制:

robocopy "C:\path\to\classdir" "C:\path\to\classdir_dup" *.class /s
jar cvf JarName.jar -C "C:\path\to\classdir_dup" .
rd /s /q "C:\path\to\classdir_dup"
于 2013-08-27T17:49:18.927 回答
0

我可能遗漏了一些东西,但是您只是想在所有子目录中添加所有类文件吗?我认为它是这样工作的:

jar cvf JarName.jar *.class
于 2013-08-27T16:38:01.347 回答