找不到包裹***。源中不存在具有此 ID 的包:“Local Nuget”、Microsoft Visual Studio 脱机包、nuget.org
Posted
技术标签:
【中文标题】找不到包裹***。源中不存在具有此 ID 的包:“Local Nuget”、Microsoft Visual Studio 脱机包、nuget.org【英文标题】:Unable to find package ***. No packages exist with this id in source(s): "Local Nuget", Microsoft Visual Studio Offline Packages, nuget.org 【发布时间】:2020-05-19 01:55:17 【问题描述】:我必须要打包一个库并在其他项目中使用。这个库引用了另一个项目,我不想作为一个包发布。为了将它包含在包中,我在 .cproj 文件中添加了以下几行:
<PropertyGroup>
<TargetsForTfmSpecificBuildOutput>$(TargetsForTfmSpecificBuildOutput);CopyProjectReferencesToPackage</TargetsForTfmSpecificBuildOutput>
</PropertyGroup>
<Target Name="CopyProjectReferencesToPackage" DependsOnTargets="ResolveReferences">
<ItemGroup>
<BuildOutputInPackage Include="@(ReferenceCopyLocalPaths->WithMetadataValue('ReferenceSourceTarget', 'ProjectReference'))" />
</ItemGroup>
</Target>
因此,我在 packages lib 文件夹中有两个 .dll,还有这种 nuspec 文件:
<?xml version="1.0" encoding="utf-8"?>
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
<metadata>
<id>NugetSample</id>
<version>1.0.1</version>
<authors>NugetSample</authors>
<owners>NugetSample</owners>
<requireLicenseAcceptance>false</requireLicenseAcceptance>
<description>Package Description</description>
<dependencies>
<group targetFramework=".NETCoreApp3.1">
<dependency id="referenced project name" version="1.0.0" exclude="Build,Analyzers" />
</group>
</dependencies>
</metadata>
</package>
但我再次收到此错误:
找不到包引用的项目名称。源中不存在具有此 ID 的包:Local Nuget、Microsoft Visual Studio Offline Packages、nuget.org
Visual Studio 似乎再次尝试将此依赖项作为 nuget 包查找。我该如何解决这个问题?
【问题讨论】:
【参考方案1】:您可以将该项目作为您要打包的主项目中的简单参考。 然后在 nuspec 文件中,作为依赖项元素的兄弟添加 references:
<references>
<reference file="referencedfile.dll" />
</references>
如果你想添加简单的文件,你也可以使用兄弟元素files:
<files>
<file src="bin\$configuration$\referencedfile.pdb" target="lib\net461" />
</files>
【讨论】:
谢谢,我现在就试试。 您必须将其从依赖项中删除并移至引用 我试过了,但同样的情况。打包后不修改nuget包有没有办法解决这个问题? 对不起,我停在这里,但我会尝试重述您的问题。如果您使用依赖项,则应在 nuget 服务器源(消息说:我找不到具有该名称的 nuget)中作为 nuget 包。如果您使用引用,它会在包内复制您正在引用的 dll 项目。正确更改 nuspec 文件(您可以在 msdn 上阅读有关文件结构的清晰文档),重新生成包,发布它并增加修复版本。祝你好运。以上是关于找不到包裹***。源中不存在具有此 ID 的包:“Local Nuget”、Microsoft Visual Studio 脱机包、nuget.org的主要内容,如果未能解决你的问题,请参考以下文章
NU1101找不到包 NLog。源 Microsoft Visual Studio Offline Packages 中不存在具有此 ID 的
错误NU1101:无法找到软件包”。源中不存在具有此ID的软件包:Microsoft Visual Studio脱机软件包,nuget.org
CircleCI 说在您的 Gemfile 中列出的任何源中都找不到您的包
Fastlane Beta:Bundler::GemNotFound:在任何源中都找不到 CFPropertyList-3.0.0