如何在 war 中添加清单文件

How to add manifest file in war

我能够创建指定目录的 war 文件,即 /mydir 和

Process p = Runtime.getRuntime().exec("jar -cvf myapp.war . ",
                        s,
                        new File("/mydir"));

但是当我尝试在创建时添加清单文件时,创建的 war 文件已损坏

Process p = Runtime.getRuntime().exec("jar -cvfm myapp.war MANIFEST.MF . ",
                        s,
                        new File("/mydir"));

即使我试过了,它也会创建 war 但只包含清单文件而不包含 /mydir

的内容
Process p = Runtime.getRuntime().exec("jar -cvfm myapp.war MANIFEST.MF * ",
                        s,
                        new File("/mydir"));

我使用了下面的代码片段并且它工作正常

jar -cvfM  myapp.war MANIFEST.MF * ",
                        s,
                        new File("/mydir"));

这意味着它不会添加自动生成的清单,而是将我保存在 meta-inf 文件夹中的清单(自定义清单文件)存档