Shell脚本为多个项目递归生成战争文件

时间:2018-11-21 09:08:41

标签: java linux shell war

我想在同一文件夹中为多个Java项目生成war文件,其中文件夹名是各自war文件的名称。

Folder Structure:
/home/admin/wars have files a , b , c ,d ,e 

I want to create war files a.war, b.war , c.war ,d.war , e.war

使用单个shell命令。

我知道创建单个war文件的命令:

jar -cvf /home/admin/wars/a.war *

如何对同一个文件夹中的多个项目(文件夹名称为war name)执行此操作?

2 个答案:

答案 0 :(得分:1)

使用Jenkins非常好。

无论如何,您应该使用Jenkins完全支持的构建工具,例如MavenAnt

例如,选中此Jenkins documentation

根据您的评论中的要求,您可以获得更多的文档:

答案 1 :(得分:0)

那呢:

cd /home/admin/wars
find ./ -type f -maxdepth 1 -exec jar -cvf {}.war {} \;

// maxdepth makes sure you don't go into subdirectories

(我没有测试此解决方案)