团队基础在RestSharp和NewtonSoft上的构建错误

时间:2019-09-27 09:51:40

标签: c# visual-studio tfs tfsbuild

我可以在本地建立分支机构,没有任何问题,但是当我尝试通过团队基础进行建立时,出现2个错误。错误是在我最近添加到解决方案的项目中产生的。

错误是:

EnvoyClient.cs(3,7): error CS0246: The type or namespace name 'Newtonsoft' could not be found (are you missing a using directive or an assembly reference?) [c:\TF-Agents\Agent2017-002\_work\2\s\System\Envoy.Connector\Envoy.Connector.csproj]

EnvoyClient.cs(4,7): error CS0246: The type or namespace name 'RestSharp' could not be found (are you missing a using directive or an assembly reference?) [c:\TF-Agents\Agent2017-002\_work\2\s\System\Envoy.Connector\Envoy.Connector.csproj]

我试图删除nuget软件包,然后将其重新添加到我的本地分支中,然后再次将请求它们拉到我想在tf-server上构建的分支中,但无济于事。

2 个答案:

答案 0 :(得分:0)

从OP更新:

所以问题在于nuget包没有被加载,因为该项目不是解决方案的一部分。

我必须将新项目(带有这两个引用)添加到该解决方案中,然后它才能完美构建。


  

EnvoyClient.cs(3,7):错误CS0246:类型或名称空间名称   找不到“ Newtonsoft”(您是否缺少using指令或   组装参考?)

对于这种问题,如果您的本地构建成功,而仅TFS构建失败,则通常是由于dll参考路径问题。确保在项目文件(.csproj)中将Dll 引用为相对路径

要在单独的目录中添加相对引用,请执行以下操作:

通过在解决方案资源管理器中右键单击项目,然后选择“添加引用”,在Visual Studio中添加引用。

找到此引用所在的* .csproj,然后在文本编辑器中将其打开。假设您的.csproj位置为c:\ tfs_get \ sources \ myfolder \ myproject \ myproj.csproj

编辑为等于

..\\..\assembly\xxx.dll

还应Daniel的建议,如果其中包括NuGet还原步骤,请仔细检查您的构建过程。

此外,您应保持构建服务器环境与本地环境相同。请仔细检查。为了解决问题,您可以尝试远程到该tfs构建代理进行手动运行。

答案 1 :(得分:0)

问题在于nuget包没有被加载,因为该项目不是解决方案的一部分

设置IIRC构建此不同的解决方案是因为我们有一个同步,该同步不需要我们主要解决方案中的所有项目。构建大型解决方案需要10分钟以上的时间。因此,我们为同步创建了一个较小的解决方案。而且我的nuget软件包已正确加载,但是由于缺少该项目,他没有加载它们,随后的构建失败了。但是restore nuget软件包的步骤就像一个魅力一样

相关问题