Azure DevOps本地流水线NuGet Pack任务NU5012报错解决咨询
解决NuGet Pack任务找不到带x64架构路径的DLL问题
方法1:在NuGet Pack任务中指定目标目录
直接让NuGet Pack任务定位到包含x64架构的输出目录:
- 若用UI配置流水线:找到NuGet Pack任务的Package folder选项,设置为
$(Build.SourcesDirectory)\Code\MyCompany.Core\bin\x64\Release\net472 - 若用YAML配置,在NuGetPack任务中添加
outputDirectory参数,或在arguments里追加:-OutputDirectory "$(Build.SourcesDirectory)\Code\MyCompany.Core\bin\x64\Release\net472"
方法2:调整构建任务的输出路径,对齐NuGet默认查找目录
修改前置的编译任务(比如VSBuild),让编译产物直接输出到NuGet默认的路径下:
- 在VSBuild任务的
MSBuild arguments中添加:/p:OutputPath=bin\Release\net472 /p:PlatformTarget=x64 - 这样编译后的DLL会直接生成到
bin\Release\net472目录,和NuGet Pack默认查找路径一致
方法3:修改自定义NuSpec文件路径(若使用自定义NuSpec)
如果是基于自定义NuSpec文件打包,直接在NuSpec的<files>节点里更新文件路径,加入x64架构:
<files> <file src="bin\x64\Release\net472\MyCompany.Core.dll" target="lib\net472" /> <!-- 其他需要打包的文件同理调整路径 --> </files>
内容的提问来源于stack exchange,提问作者UndeadEmo
相关产品推荐
相关产品推荐

