我在 Azure DevOps 中的 SSDT 项目出现以下构建错误:
System.IO.DirectoryNotFoundException: Could not find a part of the path 'd:\a\1\s\SSDTPROJECTNAME\SSDTPROJECTNAMEobj\Release\Model.xml'.
在构建的早期,它尝试将 Model.xml 文件写入无效路径:
SqlBuild:
Creating a model to represent the project...
Loading project references...
Loading project files...
Building the project model and resolving object interdependencies...
Validating the project model...
Writing model to SSDTPROJECTNAMEobj\Release\Model.xml...
由于某种原因,它无法将我的项目文件夹名称与 obj\Release\Model.xml 连接起来。但是当我在本地构建时,它会将 model.xml 写入有效位置。对于项目文件夹,我使用一个名为 $(projectDir) 的变量设置为我的项目文件夹名称。
我将 VSBuild@1 与 Windows 最新的 vmImage 一起使用。
这是我的任务:
- task: VSBuild@1
displayName: "Build DB project"
inputs:
solution: "$(projectDir)\SSDTPROJECTNAME.sqlproj"
msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:DeleteExistingFiles=True /p:PackageLocation="$(Build.ArtifactStagingDirectory)\\"'
configuration: "$(BuildConfiguration)"
clean: true