【发布时间】:2017-08-27 20:20:35
【问题描述】:
我有一个没什么特别的 .NET Core 解决方案,我们称之为Application.sln,它包含 12 个 C# 项目和 1 个 SQL 项目。在 Visual Studio 2017 中,我构建所有项目都没有问题,但是当我前往命令行使用 dotnet pack Application.sln --no-build 打包项目时,我立即遇到了 sql 项目的问题。这是错误:
error MSB4019: The imported project "C:\Program Files\dotnet\sdk\1.1.0\Microsoft\VisualStudio\v14.0\SSDT\Microsoft.Data.Tools.Schema.SqlTasks.targets" was not found. Confirm that the path in the <Import> declaration is correct, and that the file exists on disk
破译后发现第一部分C:\Program Files\dotnet\sdk\1.1.0来自我使用dotnet而不是msbuild打包解决方案,由于SSDT无法安装到dotnet文件夹中,所以会失败。
最好,我希望它忽略 .sqlproj 项目,只打包 .csproj 项目,因为之后我将单独处理 sql 项目,但我看不到任何方法可以做到这一点。有办法吗?看来我不能使用 MSBuild 样式的通配符作为 dotnet pack (***.csproj) 的参数,因为这会引发单独的错误。
我尝试过使用 msbuild /t:pack 但这给了我其他问题(它说目标“pack”在项目中不存在)。
有人对我有什么建议吗?如果有帮助,我想通过 TeamCity 来完成,但我的开发机器上也存在所有这些问题。
【问题讨论】:
-
可以卸载 SQL 项目吗?
-
我可以,但最终目标是在 CI 环境中运行,我认为这不是一个可行的解决方案。