[英]Azure DevOps Pipeline Fails DLL From Other Project Not Found
Good day,再会,
Setup an Azure DevOps Pipeline for an ASP .NET Core 3.1 API project.为 ASP .NET Core 3.1 API 项目设置 Azure DevOps Pipeline。
The pipeline step that builds the project is failing due to the business logic DLL not being found.由于未找到业务逻辑 DLL,构建项目的管道步骤失败。 All prior steps are succeeding.
所有先前的步骤都成功了。 This is a default pipeline created through setting up an Azure App Service publish profile for the project in Visual Studio 2019.
这是通过在 Visual Studio 2019 中为项目设置 Azure 应用服务发布配置文件创建的默认管道。
With the DLL project in and not in the solution the DLL is reporting as not found during the build step in the pipeline's log. DLL 项目在解决方案中而不是在解决方案中时,DLL 在管道日志中的构建步骤中报告为未找到。
reference:C:\hostedtoolcache\windows\dotnet\packs\Microsoft.NETCore.App.Ref\3.1.0\ref\netcoreapp3.1\System.Xml.XPath.XDocument.dll /reference:C:\hostedtoolcache\windows\dotnet\packs\Microsoft.NETCore.App.Ref\3.1.0\ref\netcoreapp3.1\WindowsBase.dll /debug+ /debug:portable /filealign:512 /optimize+ /out:obj\Release\netcoreapp3.1\ts3mpeccn.API.dll /ruleset:"C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\Team Tools\Static Analysis Tools\\Rule Sets\MinimumRecommendedRules.ruleset" /target:exe /warnaserror- /utf8output /deterministic+ /langversion:8.0 /analyzer:C:\hostedtoolcache\windows\dotnet\sdk\3.1.403\Sdks\Microsoft.NET.Sdk.Web\analyzers\cs\Microsoft.AspNetCore.Analyzers.dll /analyzer:C:\hostedtoolcache\windows\dotnet\sdk\3.1.403\Sdks\Microsoft.NET.Sdk.Web\analyzers\cs\Microsoft.AspNetCore.Mvc.Analyzers.dll /analyzer:C:\hostedtoolcache\windows\dotnet\sdk\3.1.403\Sdks\Microsoft.NET.Sdk.Web\analyzers\cs\Microsoft.AspNetCore.Components.Analyzers.dll Controllers\Name.cs Dto\NameDto.cs Program.cs Startup.cs "obj\Release\netcoreapp3.1\.NETCoreApp,Version=v3.1.AssemblyAttributes.cs" obj\Release\netcoreapp3.1\ts3mpeccn.API.AssemblyInfo.cs /warnaserror+:NU1605
2020-10-19T04:42:17.9436652Z Using shared compilation with compiler from directory: C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\Roslyn
2020-10-19T04:42:21.0045432Z ##[error]src\ts3mpeccn.API\Controllers\Name.cs(6,7): Error CS0246: The type or namespace name 'redexpanse' could not be found (are you missing a using directive or an assembly reference?)
2020-10-19T04:42:21.0067383Z 2>Controllers\Name.cs(6,7): error CS0246: The type or namespace name 'redexpanse' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0076796Z ##[error]src\ts3mpeccn.API\Controllers\Name.cs(15,26): Error CS0246: The type or namespace name 'GivenFemaleName' could not be found (are you missing a using directive or an assembly reference?)
2020-10-19T04:42:21.0081303Z 2>Controllers\Name.cs(15,26): error CS0246: The type or namespace name 'GivenFemaleName' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0087384Z ##[error]src\ts3mpeccn.API\Controllers\Name.cs(17,26): Error CS0246: The type or namespace name 'MiddleFemaleName' could not be found (are you missing a using directive or an assembly reference?)
2020-10-19T04:42:21.0090430Z 2>Controllers\Name.cs(17,26): error CS0246: The type or namespace name 'MiddleFemaleName' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0097898Z ##[error]src\ts3mpeccn.API\Controllers\Name.cs(18,26): Error CS0246: The type or namespace name 'Surname' could not be found (are you missing a using directive or an assembly reference?)
2020-10-19T04:42:21.0103126Z 2>Controllers\Name.cs(18,26): error CS0246: The type or namespace name 'Surname' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0245483Z 2>Done Building Project "D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj" (default targets) -- FAILED.
2020-10-19T04:42:21.0341165Z 1>Done Building Project "D:\a\1\s\ts3mpeccn.API.sln" (default targets) -- FAILED.
2020-10-19T04:42:21.0377210Z
2020-10-19T04:42:21.0378012Z Build FAILED.
2020-10-19T04:42:21.0564873Z
2020-10-19T04:42:21.0587067Z "D:\a\1\s\ts3mpeccn.API.sln" (default target) (1) ->
2020-10-19T04:42:21.0587820Z "D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj" (default target) (2) ->
2020-10-19T04:42:21.0588378Z (ResolveAssemblyReferences target) ->
2020-10-19T04:42:21.0589398Z C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Current\Bin\amd64\Microsoft.Common.CurrentVersion.targets(2084,5): warning MSB3245: Could not resolve this reference. Could not locate the assembly "grimlock". Check to make sure the assembly exists on disk. If this reference is required by your code, you may get compilation errors. [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0591411Z
2020-10-19T04:42:21.0591610Z
2020-10-19T04:42:21.0591831Z "D:\a\1\s\ts3mpeccn.API.sln" (default target) (1) ->
2020-10-19T04:42:21.0592162Z "D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj" (default target) (2) ->
2020-10-19T04:42:21.0592467Z (CoreCompile target) ->
2020-10-19T04:42:21.0592970Z Controllers\Name.cs(6,7): error CS0246: The type or namespace name 'redexpanse' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0593789Z Controllers\Name.cs(15,26): error CS0246: The type or namespace name 'GivenFemaleName' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0594630Z Controllers\Name.cs(17,26): error CS0246: The type or namespace name 'MiddleFemaleName' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0595608Z Controllers\Name.cs(18,26): error CS0246: The type or namespace name 'Surname' could not be found (are you missing a using directive or an assembly reference?) [D:\a\1\s\src\ts3mpeccn.API\ts3mpeccn.API.csproj]
2020-10-19T04:42:21.0596153Z
2020-10-19T04:42:21.0596354Z 1 Warning(s)
2020-10-19T04:42:21.0596505Z 4 Error(s)
2020-10-19T04:42:21.0596613Z
2020-10-19T04:42:21.0596781Z Time Elapsed 00:00:05.70
2020-10-19T04:42:21.2457357Z ##[error]Process 'msbuild.exe' exited with code '1'.
2020-10-19T04:42:21.3396283Z ##[section]Finishing: Build solution ts3mpeccn.API.sln
This log is taken from the last pipeline run on Azure DevOps.此日志取自在 Azure DevOps 上运行的最后一个管道。
What else can I provide to help figure this out?我还能提供什么来帮助解决这个问题?
Thank you in advance for your suggestions.预先感谢您的建议。
Note: Just found this link: Add reference to Common project Azure DevOps Build Pipeline .注意:刚刚找到此链接: 添加对公共项目 Azure DevOps Build Pipeline 的引用。 Am testing and have updated my question.
正在测试并更新了我的问题。
Jason杰森
jas@red-expanse.com jas@red-expanse.com
These problems are generally solved with a package management solution.这些问题通常可以通过包管理解决方案来解决。
Try packaging your dll into a nuget package.尝试将您的 dll 打包到 nuget 包中。
While not ideal, I just experimented with using Azure's Git and this time I'm not seeing the build errors.虽然不理想,但我只是尝试使用 Azure 的 Git,这次我没有看到构建错误。
Was toying with idea of switching off GitHub anyways so I can use commit tags with Azure DevOps;一直在考虑关闭 GitHub 的想法,这样我就可以在 Azure DevOps 中使用提交标签; this just pushed me to do that sooner than later.
这只是促使我迟早这样做。
I am also playing with creating a Nuget package of Project B but I'm fresh new to Nuget and what tutorials I find are not for a newbie like me.我也在尝试创建 Project B 的 Nuget 包,但我是 Nuget 的新手,我找到的教程不适合像我这样的新手。 :/
:/
While I don't have a good explanation or solution, I am able to move forward with my own project.虽然我没有很好的解释或解决方案,但我可以继续我自己的项目。 I apologize to future readers for not having a better answer.
我向未来的读者道歉,因为没有更好的答案。 :/
:/
My only hunch is that Azure has magic to know how to see related projects in its own Git that it doesn't have to be able to see different repositories in GitHub.我唯一的预感是,Azure 拥有神奇的能力,可以知道如何在自己的 Git 中查看相关项目,而不必在 GitHub 中查看不同的存储库。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.