Reference 带有多个DLL';s
我已经通过nuget package Explorer创建了一个包含以下内容的nuget包Reference 带有多个DLL';s,reference,nuget,nuget-package,Reference,Nuget,Nuget Package,我已经通过nuget package Explorer创建了一个包含以下内容的nuget包 lib -- CPPLib.dll -- DotNetWrapper.dll CPPLib.dll是带有逻辑实现的主库(在本机C++中),而DotNetWrapper.dll是将在C#项目中引用的包装器 当我尝试安装这个nuget软件包时,出现了以下错误 Install failed. Rolling back... Install-Package : Failed to a
lib
-- CPPLib.dll
-- DotNetWrapper.dll
CPPLib.dll是带有逻辑实现的主库(在本机C++中),而DotNetWrapper.dll是将在C#项目中引用的包装器
当我尝试安装这个nuget软件包时,出现了以下错误
Install failed. Rolling back...
Install-Package : Failed to add reference to 'CPPLib.dll'.
At line:1 char:16
+ install-package <<<< -id MyPackage
+ CategoryInfo : NotSpecified: (:) [Install-Package], InvalidOperationException
+ FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand
然后可以安装包,但项目将不会生成,因为DotNetWrapper.dll无法在同一文件夹中找到CPPLib.dll
我怎样才能避开这个问题?是否可以以某种方式将所有内容都放在lib文件夹中,并且只“公开”包中的DotNetWrapper.dll?您需要处理nuspec文件中的文件和引用:
...
因此,您定义了要放入带有“files”的包中的文件,并告诉nuget您要添加的唯一引用是带有“references”的包装DLL
请注意,这些标记位于不同的级别-“引用”必须位于“元数据”中,但“文件”与“元数据”是同级的。您需要处理nuspec文件中的文件和引用:
...
因此,您定义了要放入带有“files”的包中的文件,并告诉nuget您要添加的唯一引用是带有“references”的包装DLL
请注意,这些标签位于不同的级别——“引用”必须位于“元数据”中,但“文件”与“元数据”是同级的。不,不能混用。您需要创建两个单独的包。不,您不能混合使用它们。您需要创建两个单独的包。
content
-- CPPLib.dll
lib
-- DotNetWrapper.dll