Nuget - 包恢复失败。回滚“WebApplication1”的包更改。 0

时间:2017-02-06 02:21:16

标签: c# nuget .net-core nuget-package-restore visual-studio-2017

这是我自己定制的nuget包,我还没有发布并在本地测试。

nuget包由一个dll文件和nuspec文件组成如下。

<?xml version="1.0"?>
<package >
  <metadata>
    <id>MyLib</id>
    <version>1.0.0</version>
    <authors>Author</authors>
    <owners>Owner</owners>
    <licenseUrl>license url</licenseUrl>
    <projectUrl>project url</projectUrl>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <description>some description</copyright>
    <tags>Tag1 Tage2</tags>
  </metadata>
  <files>
    <file src="bin\Debug\netstandard1.4\*.dll" target="lib" />
    <file src="bin\Debug\netstandard1.4\*.pdb" target="lib" />
  </files>
</package>

我已将nupkg文件复制到某个位置并将其添加到

Visual studio Tools -> Options -> Packages -> sources directory 

错误

Package MyLib 1.0.0 is not compatible with netcoreapp1.0 (.NETCoreApp,Version=v1.0). Package MyLib 1.0.0 supports: net (.NETFramework,Version=v0.0)
Package restore failed. Rolling back package changes for 'WebApplication1'.

不确定如何解决问题或查找更多信息。

更多信息

dll文件是使用模板(.Net Framework 4.5.2)

创建的
Templates -> Visual C# -> .NET Core -> Class Library (.NET Standard)

使用模板创建Web应用程序。 (空Web应用程序)

Templates -> Visual C# -> .NET Core -> ASP.NET Core Web Application (.NET Core)

修改

我在Output窗口

下找到了更多详细信息
One or more packages are incompatible with .NETCoreApp,Version=v1.0.

我应该创建哪种与.NETCoreApp兼容的类库?

EDIT2

我看到了URL。它建议使用dotnet.exe pack --no-build创建nupkg,而之前我从nuget.org下载nuget.exe来创建包。

我试过上面的命令但是后来视觉工作室说了

"... Target pack doesn't exists in the project ... "

此网站上也有以下说明,但URL

失败

3 个答案:

答案 0 :(得分:143)

您需要清除Nuget Cache。要执行此操作,请转到工具 - &gt;选项并点击它就像这张图片enter image description here

答案 1 :(得分:19)

您的项目针对的是.Net Framework的不兼容版本。右键单击项目,选择属性并记下Target Framework的值。查看Microsoft的Nuget包,然后安装更合适的NuGet包。安装旧版本的NuGet软件包或更新项目以定位更新版本。

答案 2 :(得分:0)

由于NU1603:警告,我不得不更改Build Configuration。

在我的构建配置中,“将警告视为错误”设置为“全部”。

由于NU1603警告,这阻止了Nuget升级软件包。 enter image description here