我有一个类库项目,其中包含在构建时执行的t4模板。输出.sql文件设置为Content
的{{1}},应该在构建时复制到输出文件夹。
我使用MSBuild在我的TeamCity Build Box上进行了以下配置设置:
命令行参数:
.csproj
这样做的结果是文件被复制到outputdir但在重建的/p:OutDir=C:\output\DBMigration
/p:Configuration=Release
/p:DebugSymbols=false
/p:DebugType=None
/p:DeleteExistingFiles=true
/t:rebuild
/verbosity:n
步骤中被删除。
为了解决这个问题,我可以运行Build而不是重建(即CoreClean
)。
这将跳过/t:build
步骤,但为什么在复制过程发生后调用输出目录CoreClean
?删除操作是否应该在复制之前?
为什么我只需要为ClassLibrary类型的项目执行此步骤,web / windows应用程序似乎没有重建这个问题。
此外,从构建日志中可以看出输出目录永远不会被CoreClean
清除。
在尝试构建之前,我可以执行hack并强制运行/p:DeleteExistingFiles=true
脚本来清理目录,但是如果没有正确执行重建,必须有一个受支持的MSbuild参数来执行此操作吗?