Jenkins中的矩阵配置从SVN生成奇怪的工作空间

Jenkins中的矩阵配置从SVN生成奇怪的工作空间,svn,jenkins,Svn,Jenkins,我最近开始用Jenkins做实验,我要么对矩阵配置作业应该做什么大错特错,要么我做错了什么。我已经试着寻找类似的问题,但我对詹金斯的行话还不够熟悉,还没有找到任何。也许这是第一次有人问这个问题 我已将一个项目签入svn,其目录结构如下: ./doc ./include/ ./src/ ./target ./target/linux-ARM ./target/linux-ARM/include ./target/linux-ARM/lib ./target/linux-ARM/src ./tar

我最近开始用Jenkins做实验,我要么对矩阵配置作业应该做什么大错特错,要么我做错了什么。我已经试着寻找类似的问题,但我对詹金斯的行话还不够熟悉,还没有找到任何。也许这是第一次有人问这个问题

我已将一个项目签入svn,其目录结构如下:


./doc
./include/
./src/
./target
./target/linux-ARM
./target/linux-ARM/include
./target/linux-ARM/lib
./target/linux-ARM/src
./target/linux-i386
./target/linux-i386/include
./target/linux-i386/lib
./target/linux-i386/src
./target/linux-x86_64
./target/linux-x86_64/include
./target/linux-x86_64/lib
./target/linux-x86_64/src
./target/win32-i386
./target/win32-i386/include
./target/win32-i386/lib
./target/win32-i386/src
./target/win32-x86_64
./target/win32-x86_64/include
./target/win32-x86_64/lib
./target/win32-x86_64/src
独立于平台的代码在./src中,所有特定于平台的代码都在相应的目标目录中。我专门制作了这个目录结构,以便使用jenkins中的矩阵配置项目

我定义的唯一轴称为“平台”,它有以下值:linux ARM、linux-i386、linux-x86_64、win32-i386和win32-x86_64

我想我可以简单地指定以下构建步骤,然后一切都会得到处理:


chmod 777./target/$platform/build
chmod 777./target/$platform/deploy
/目标/$平台/构建
./target/$platform/deploy

现在的问题是,詹金斯正确地完成了这项工作,没有报告任何错误;但是当我(在jenkins内部)导航到workspace部分时,我看到构建项目使用了完全不同的目录结构。基本上,每个配置都会重新导出整个项目,并将其放在./$platform目录中



/doc/詹金斯总是在矩阵作业中这样做。我认为原因是它们应该有独立的工作区,所以构建不会相互影响


您可以通过排除
Doxyfile
中的platform文件夹,或者只为其中一个子对象运行Doxygen来解决Doxygen问题。

thx,我不确定我是做错了什么,还是应该这样做。

chmod 777 ./target/$platform/build
chmod 777 ./target/$platform/deploy
./target/$platform/build
./target/$platform/deploy

./doc // <--- this one is actually thesame
./include/
./platform/
./platform/linux-ARM
./platform/linux-ARM/doc // <--- as this one
./platform/linux-ARM/include
./platform/linux-ARM/src
./platform/linux-ARM/target
./platform/linux-ARM/target/linux-ARM
./platform/linux-ARM/target/linux-ARM/include
./platform/linux-ARM/target/linux-ARM/lib
./platform/linux-ARM/target/linux-ARM/src
./platform/linux-ARM/target/linux-i386
./platform/linux-ARM/target/linux-i386/include
./platform/linux-ARM/target/linux-i386/lib
./platform/linux-ARM/target/linux-i386/src
./platform/linux-ARM/target/linux-x86_64
./platform/linux-ARM/target/linux-x86_64/include
./platform/linux-ARM/target/linux-x86_64/lib
./platform/linux-ARM/target/linux-x86_64/src
...
...
./src/
./target
./target/linux-ARM
./target/linux-ARM/include
./target/linux-ARM/lib
./target/linux-ARM/src
./target/linux-i386
./target/linux-i386/include
./target/linux-i386/lib
./target/linux-i386/src
./target/linux-x86_64
./target/linux-x86_64/include
./target/linux-x86_64/lib
./target/linux-x86_64/src
./target/win32-i386
./target/win32-i386/include
./target/win32-i386/lib
./target/win32-i386/src
./target/win32-x86_64
./target/win32-x86_64/include
./target/win32-x86_64/lib
./target/win32-x86_64/src