【发布时间】:2015-12-13 14:01:04
【问题描述】:
我在 VS 2013 中有一个解决方案,并使用 VS Online。 在本地,我可以毫无问题地构建解决方案 (.NET 4.5),但在 VisualStudioOnline 中,我收到构建错误。我没有使用任何 Nuget 包。
当我签入并构建 Visual Studio Online 时,我收到如下错误:
命名空间“DataPipeline”中不存在类型或命名空间名称“Commands”(您是否缺少程序集引用?)
这是我的类型/命名空间之一。该类型存在于此命名空间中,并且也用于解决方案中的其他项目。 这个项目是否可能构建得太早并且找不到类型,因为引用的程序集不存在(但我会假设不同的错误消息)? “缺失”的项目是唯一一个构建为 x86 的项目。
出了什么问题,我可以在哪里查看更多详细信息?我在哪里可以检查/修改构建顺序?
这是类中的命名空间:
using DataPipeline;
using DataPipeline.Commands;
using DataPipeline.Formatters;
using DataPipeline.Helper;
我在这些命名空间上遇到 3 个构建错误:
DataPipeline.Commands;
DataPipeline.Formatters;
DataPipeline.Helper;
“DataPipeline”未在错误中列出,但与未找到的命名空间位于同一项目中。
构建于 2015 年 9 月 16 日晚上 8:15:27 开始。 1> 节点 1 上的项目“C:\a\6d58edb1\DataBridge\DataBridge.sln”(默认目标)。 1>验证解决方案配置: 构建解决方案配置“调试|任何 cpu”。 验证项目: 在解决方案配置“调试|任何 CPU”中未选择项目“DataBridge.Pipeline”进行构建。 1>项目“C:\a\6d58edb1\DataBridge\DataBridge.sln”(1)正在建设中 "C:\a\6d58edb1\DataBridge\DataBridge.Test\DataBridge.Test.csproj" (2) 在节点 1(默认目标)上。 2>准备构建: 创建目录“bin\Debug\”。 1>项目“C:\a\6d58edb1\DataBridge\DataBridge.sln”(1)正在建设中 "C:\a\6d58edb1\DataBridge\DataBridge.Common\DataBridge.Common.csproj" (3) 在节点 2(默认目标)上。 3>准备构建: 创建目录“bin\Debug\”。 1>项目“C:\a\6d58edb1\DataBridge\DataBridge.sln”(1)正在建设中 "C:\a\6d58edb1\DataBridge\DataBridge.Service\DataBridge.Service.csproj" (4) 在节点 1(默认目标)上。 4>准备构建: 创建目录“..\DataBridge.Control\bin\Debug\service\”。 4>项目“C:\a\6d58edb1\DataBridge\DataBridge.Service\DataBridge.Service.csproj” (4) 正在建设中 "C:\a\6d58edb1\DataBridge\DataBridge.Runtime\DataBridge.Runtime.csproj" (5) 在节点 1(默认目标)上。 5>准备构建: 创建目录“bin\Debug\”。 1>项目“C:\a\6d58edb1\DataBridge\DataBridge.sln”(1)正在建设中 "C:\a\6d58edb1\DataBridge\DataBridge.Console\DataBridge.Console.csproj" (6) 在节点 1(默认目标)上。 6>准备构建: 创建目录“bin\Debug\”。 生成绑定重定向: 没有来自 ResolveAssemblyReferences 的建议绑定重定向。
核心编译: C:\Program Files (x86)\MSBuild\12.0\bin\Csc.exe /noconfig /nowarn:1701,1702 /nostdlib+ /platform:anycpu32bitpreferred /errorreport:prompt /warn:4 /define:DEBUG;TRACE /highentropyva+ /参考:C:\a\6d58edb1\DataBridge\DataBridge.Common\bin\Debug\DataBridge.Common.dll /reference:C:\a\6d58edb1\DataBridge\Reference\Ionic.Zip.dll /reference:C:\a\6d58edb1\DataBridge\Reference\log4net\log4net.dll /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\Microsoft.CSharp.dll" /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\mscorlib.dll" /reference:C:\a\6d58edb1\DataBridge\Reference\Quartz\ClientProfile\Quartz.dll /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\System.Core.dll" /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\System.Data.DataSetExtensions.dll" /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\System.Data.dll" /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\System.dll" /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\System.Net.Http.dll" /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\System.Xml.dll" /参考:“C:\程序文件(x86)\参考 程序集\Microsoft\Framework.NETFramework\v4.5\System.Xml.Linq.dll" /debug+ /debug:full /filealign:512 /optimize- /out:obj\Debug\DataBridge.Runtime.exe /subsystemversion:6.00 /target:exe /utf8output HeartbeatJob.cs 配置\EmailInfo.cs Configuration\PipelineInfo.cs DataBridgeManager.cs Configuration\SystemInfo.cs RemoteLogListener.cs MailJob.cs Program.cs 配置\DataBridgeInfo.cs DataBridge.cs 属性\AssemblyInfo.cs "C:\Users\buildguest\AppData\Local\Temp.NETFramework,Version=v4.5.AssemblyAttributes.cs"
[错误]DataBridge.Runtime\DataBridgeManager.cs(6,20):错误 CS0234:命名空间中不存在类型或命名空间名称“Commands”
'DataPipeline'(您是否缺少程序集参考?) 5>DataBridgeManager.cs(6,20): 错误 CS0234: 命名空间中不存在类型或命名空间名称“Commands” “DataPipeline”(您是否缺少程序集参考?) [C:\a\6d58edb1\DataBridge\DataBridge.Runtime\DataBridge.Runtime.csproj]
[错误]DataBridge.Runtime\DataBridgeManager.cs(7,20):错误 CS0234:类型或命名空间名称“格式化程序”中不存在
命名空间“DataPipeline”(您是否缺少程序集引用?) 5>DataBridgeManager.cs(7,20): 错误 CS0234: 命名空间中不存在类型或命名空间名称“格式化程序” “DataPipeline”(您是否缺少程序集参考?) [C:\a\6d58edb1\DataBridge\DataBridge.Runtime\DataBridge.Runtime.csproj]
[error]DataBridge.Runtime\DataBridgeManager.cs(69,17): 错误 CS0246: 找不到类型或命名空间名称“管道”(你是
缺少 using 指令或程序集引用?) 5>DataBridgeManager.cs(69,17): 错误 CS0246: 找不到类型或命名空间名称“管道”(您是否缺少使用 指令还是程序集引用?) [C:\a\6d58edb1\DataBridge\DataBridge.Runtime\DataBridge.Runtime.csproj] 5>完成构建项目“C:\a\6d58edb1\DataBridge\DataBridge.Runtime\DataBridge.Runtime.csproj” (默认目标)——失败。 4>完成构建项目“C:\a\6d58edb1\DataBridge\DataBridge.Service\DataBridge.Service.csproj” (默认目标)--失败。
【问题讨论】:
-
您是使用项目引用,还是直接引用构建的程序集?
-
我将这些项目作为通常的参考。我检查了构建中的控制台日志,发现:“ValidateProjects:在解决方案配置“调试|任何 CPU”中未选择项目“DataBridge.Pipeline”进行构建。”这是具有“缺失”类型的项目。
-
这是命名空间:使用 DataPipeline;使用 DataPipeline.Commands;使用 DataPipeline.Formatters;使用 DataPipeline.Helper; “DataPipeline”未在错误中仅列出命名空间“DataPipeline.Commands;DataPipeline.Formatters;DataPipeline.Helper”。 ??我不明白这个。
-
您是否尝试过在构建中包含该程序集?
-
在构建中包含该程序集是什么意思?在哪里做?
标签: .net visual-studio azure-devops