我使用Cygwin在Java中执行Shell脚本。我的脚本在命令提示符下正常运行,即使我通过Java尝试简单的shell脚本也可以正常运行。
但是现在我的脚本正在使用名为 lib 的文件夹中的另一个shell脚本 所以我需要在我的项目中包含lib文件夹。
任何人都可以建议如何将shell脚本作为Java项目的一部分包含在内。
Lib Folder - >
InSide Lib Folder这些是Shell脚本。 my_script.sh正在使用哪个。
编辑: - 我想在我的项目中添加Shell脚本,该脚本使用命令行参数和上面文件夹结构中的一些其他脚本。
cmd = "D:/cygwin/bin/bash -c '/bin/my_script.sh 121 121 1212 12121'";
帮我做这个。
答案 0 :(得分:6)
如果您使用maven作为构建工具,最佳解决方案是在/src/main/resources
下添加脚本。在这种情况下,脚本将自动包含在您的jar文件中,因此您可以从Java代码中动态提取它们并运行。
如果您想单独使用脚本,则建议使用良好的解决方案。我的意思是lib
文件夹。但是,因为我使用maven,我会将它们放在/src/main/sh
下(正如我将我的java文件放在/src/main/java
下)