背景:
我有一个SVN项目,它有很多shell + DB脚本,其中一些在svn签出时本身就缺少执行权限。
在该项目的maven构建之后(这只是编译我们的sybase SP(来自.prc)并将它们转换为.ssp文件)。
在任何环境中应用此DB Build时,我们曾经使用cd进入此项目(来自Build server),并执行一些主脚本。
现在,问题是这些shell脚本(+其他可执行文件)在dos2unix和执行权限方面存在问题。 SVN Mime-type + Line结尾已经设置好..但是这些文件在大约十年之前都已签到,但仍有问题。
只考虑使用Maven-assembly-plugin的组合(提供权限+处理行结尾)和Maven-dependency-plugin来解压缩。
maven中是否有任何解决此问题的最佳方法(在构建期间)..
答案 0 :(得分:1)
首先我建议通过svn:executable
属性在svn中修复linux上执行的执行标志,这意味着只需为相应的文件设置并检查它们。
svn propset svn:executable "*" thescriptfile.sh
在maven-assembly-plugin中,您可以定义文件/目录permissions (fileMode) in the assembly-descriptors