Rename app.config
本文关键字:config app Rename | 更新日期: 2024-09-27 04:39:13
我有两个项目,它们在同一位置使用相同的代码,但使用不同的依赖项和app.config文件,并且两个项目都编译为相同的exe名称。
目前,我配置了一个PreBuild脚本,它将正确的文件从project_a.config
或project_b.config
复制到app.config
。
不幸的是,XBuild在从命令行运行时不会执行PreBuild脚本,所以我必须在构建之前进行复制。
有没有办法将另一个文件用作app.config?
编辑:注意,这只在Linux上运行。
我的csproj文件中的条目:
<Command type="BeforeBuild"
command="cp -f MonoMultiJack.Linux.config app.config"
workingdir="${ProjectDir}" />
这是我的构建脚本:
#!/bin/bash
XBUILD=xbuild
SOLUTION=MonoMultiJack.Lnx.sln
# do some other stuff
${XBUILD} ${SOLUTION} /p:Configuration=Release /t:Clean
${XBUILD} ${SOLUTION} /p:Configuration=Release
不幸的是,当从命令行运行,所以我必须在建筑物
你的这种假设是错误的。PreBuild事件在xbuild中运行良好,就像在MSBuild中一样。不起作用的是一个不跨平台的脚本,例如使用cmd.exe
或copy
命令(在Unix中称为cp
),它们只存在于Windows中。
为了防止出现此问题,您需要在xbuild中使用MSBuild条件,例如这里解释的条件。