首页 > 解决方案 > 自定义 NuGet 包未安装在 wix 项目中

问题描述

我生成了一个 NuGet,它只是我想在我的一个项目中使用的一些 redist 文件。如果我将它安装在 C# 或 C++ 项目中,它就可以工作。但是当我尝试在 wixproj 项目中安装它时,我收到以下消息: 无法安装包'package-1.0.0'。您正在尝试将此包安装到以“不支持,版本=v0.0”为目标的项目中,但该包不包含任何与该框架兼容的程序集引用或内容文件。有关详细信息,请联系包作者。

我通过 TeamCity 任务(使用 NuGet 5.6.0)生成包。尝试使用 NuGet CLI 5.8.1 生成包时,我收到以下警告:

*警告:NU5128:在 nuspec 的依赖项组和 lib/ref 文件夹中声明的某些目标框架在其他位置没有完全匹配。请参阅以下操作列表:

查看https://docs.microsoft.com/en-us/nuget/reference/errors-and-warnings/nu5128,其中一个解决方案是尝试依赖组 targetFramework,(我使用“native0.0”)没有成功。我的nuspec如下:

<?xml version="1.0"?>
 <package>
  <metadata>
    <id>package</id>

    <version>1.0.0</version>
    <authors>package</authors>
    <owners>owner</owners>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>my package</description>
    <copyright>© 2021 company, Inc</copyright>
    <tags>native</tags>
  </metadata>
  <files>
    <file src="downloads\Folder\win32.vs2017\file1.lib" target="lib\native\lib\win32.vs2017\" />
    <file src="downloads\Folder\win32.vs2017\file1-debug.lib" target="lib\native\lib\win32.vs2017\" />
    <file src="downloads\Folder\Include\**" target="lib\native\include\" />
    <file src="build\package.props" target="build\native" />
  </files>
</package>

还有我的道具文件

<Project>
 <PropertyGroup>
   <MyVersion>1.0.0</MyVersion>
 </PropertyGroup>
</Project>

我可以将其他 NuGet 包安装到 wixprojects 中,那么我如何配置我的工作?谢谢。

标签: nugetwix

解决方案


好的,我找到了,问题出在这条线上

    <file src="build\package.props" target="build\native" />

更改目标以"build\"允许将 NuGet 加载到任何项目类型,包括 WixProj。请注意,NU5128 警告仍然存在,但对我来说不是问题。


推荐阅读