标签: nuget-package

托管您自己的NuGet和Symbol Source服务器?

我知道我们可以托管我们自己的私有/内部NuGet服务器,但有没有办法托管你自己的符号源服务器链接到你的私人NuGet包?我公司的政策不允许发布源代码,甚至包括SymbolSource.Org私有仓库.

谢谢.

remote-debugging debug-symbols nuget nuget-package nuget-server

22
推荐指数
1
解决办法
9148
查看次数

在构建期间,NuGet包文件未复制到项目内容

我正在使用VS2012专业版和NuGet Package Manager版本2.2.31210构建MVC4 Web应用程序.我的解决方案中有多个项目,所有项目共享我使用NuGet安装的各种软件包.我的一个项目是一个MVC4 Web应用程序,我使用的是使用NuGet安装的软件包,如bootstrap,jquery UI等.

当我从我的存储库克隆我的整个解决方案的新副本并构建我的MVC4项目时,包恢复功能似乎正在工作:它在解决方案direcotry下创建packages目录并填充它我将期望的所有软件包版本看到.但是,内容文件不会被复制到MVC app目录中的适当位置.奇怪的是,它确实为内容创建目录,但不会复制内容文件本身.

例如,我正在使用Twitter Bootstrap包,它出现在packages/Twitter.Bootstrap.2.2.2中.在MVC项目中,在Content目录中创建了一个名为bootstrap(包含css,img和js目录)的目录.但是,没有css或js文件被复制到这些目录中!

有没有人知道我必须说出什么神奇的咒语才能让构建从NuGet包目录中复制这些内容文件?

nuget nuget-package

22
推荐指数
2
解决办法
1万
查看次数

Nuget包生成Exclude lib文件夹

我正在尝试使用.nuspec文件生成nuget包.我们在一个屋檐下有几个项目,并尝试创建nLog.config(和转换文件)并通过nuget包分发它.对于任何版本的.Net Framework,我正在寻找相同的配置文件集(只配置没有dll).所以我真的不需要\ lib \net45\myproject.dll或\ lib \net40\myproject.dll.虽然当我生成nuget包时,它总是创建lib文件夹并包含dll.对于与.net框架版本相关的任何项目,哪种创建依赖关系.

下面是我的nuspec文件,以防有人想提及我做错了什么.我试过""和其他一些事情,但没有运气.

<?xml version="1.0"?>
<package >
  <metadata>
    <id>NLogConfig</id>
    <version>1.0.3</version>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <copyright>Copyright 2013</copyright>
    <dependencies>
      <dependency id="NLog" version="2.1.0" />
      <dependency id="NLog.Schema" version="2.1.0" />
    </dependencies>
  </metadata>
  <files>    
    <file src="NLog.config" target="content" />
    <file src="NLog.Debug.config" target="content" />
    <file src="NLog.UAT.config" target="content" />
    <file src="NLog.Release.config" target="content" />
    <file src="tools\*.*" target="tools"/>          
  </files>
</package>
Run Code Online (Sandbox Code Playgroud)

如何使用nuspec文件(首选)或其他机制完全排除lib文件夹?谢谢 !!

在此输入图像描述

更新1:

我试图偷偷摸摸但没有成功.我把post build事件和试图删除DLL.但不知何故系统很聪明,它给了我错误"错误79无法找到'C:\ GITRepo\NLogConfig\NLogConfig\bin\Release\NLogConfig.dll'.确保项目已经建成."

更新2

我没有找到使用.csproj来构建nuget包的方法,但是使用外部命令并指定nuspec文件我能够获得相同的结果.问题仍然存在,这只是我的解决方法.

.net c# nuget nuget-package visual-studio-2012

22
推荐指数
4
解决办法
1万
查看次数

NuGet不在构建时恢复包

我刚刚在一台新机器上创建了一个工作区,从TFS获得了最新的项目,启用了NuGet Restore,我获得了以下(略读)输出:

1>------ Rebuild All started: Project: Caching, Configuration: Debug Any CPU ------
1>  Restoring NuGet packages...
1>  To prevent NuGet from downloading packages during build, open the Visual Studio Options dialog, click on the Package Manager node and uncheck 'Allow NuGet to download missing packages'.
1>  All packages listed in packages.config are already installed.
1>  Caching Framework -> C:\MyProjLocation\Caching\bin\Debug\Caching.dll
2>------ Rebuild All started: Project: Library, Configuration: Debug Any CPU ------
2>C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1635,5): warning MSB3245: Could not resolve this …
Run Code Online (Sandbox Code Playgroud)

msbuild visual-studio nuget nuget-package visual-studio-2013

22
推荐指数
4
解决办法
4万
查看次数

如何打包面向.NET Core的可移植.NET库?

如何以现代通用方式打包可移植.NET库?假设我有一个AnyCPU程序集,我希望它可用于任何支持.NET Core API表面的.NET平台,例如.NET Framework 4.6和通用Windows平台.

这是一系列问题和答案,记录了我对现代NuGet包创作主题的研究结果,特别关注NuGet 3引入的变化.您可能还对一些相关问题感兴趣:

.net nuget nuget-package .net-core uwp

22
推荐指数
1
解决办法
5537
查看次数

Nuget Package ...在项目中不存在...包...已经存在于文件夹中

我一直在与这个错误斗争几个小时,无法找到一个有效的解决方案.

我在一个多项目解决方案中有一个ASP.Net API,它的参考/依赖关系配置不当,我一直试图修复它两天.

问题是(我相信)API缺少System.Web.Http/System.Web.Http.WebHost,它显然包含在Microsoft.AspNet.WebApi.Core中(每多个其他Stack Overflow问题).当试图通过Nuget安装它时,我尝试解决依赖关系时收到以下错误.此外,我每次都遇到此错误(请参阅本问题后面的疑难解答):

Package Manager控制台的屏幕截图

我没有按特定顺序完成以下步骤(各种组合多次):

  • 运行'Update-package Microsoft.AspNet.WebApi.Core -reinstall'
  • 删除解决方案范围的"Packages"文件夹并删除项目的packages.config并尝试还原包
  • 从物理驱动器和TFS中删除整个项目,并从头开始重新创建它(它创建时引用不正确)
  • 通过命令行和Nuget GUI安装软件包
  • 检查解决方案到我硬盘上的不同位置,尝试尽可能新鲜
  • 重新启动计算机/重新启动Visual Studio

在这一点上,只要修复它,我就可以使用非干净的修复程序.API在某一点上工作,但后来我将其检入TFS,创建了一个分支,现在正在分支机构工作.可能有一些依赖项没有被包括在内(?)但是即使是这种情况,似乎我采取的步骤应该可以解决问题.

c# asp.net nuget nuget-package asp.net-web-api

22
推荐指数
2
解决办法
1万
查看次数

NuGet包还原不适用于构建服务器

我已经在我的解决方案上设置了NuGet Package Restore,它在我的本地机器上运行良好.我按照这里提供的说明操作:

http://docs.nuget.org/docs/workflows/using-nuget-without-committing-packages

我遇到的问题是在我的构建服务器上发生以下错误:

默认情况下禁用包还原.要同意,请打开Visual Studio选项对话框,单击程序包管理器节点,然后选中"允许NuGet在构建期间下载缺少的程序包".您还可以通过将环境变量"EnableNuGetPackageRestore"设置为"true"来表示同意.

不幸的是,我无法访问构建服务器,因为它是在站点外控制的,因此无法更新环境变量.还有其他方法吗?我可以添加到解决方案文件或类似的任何东西,以允许包恢复?

nuget nuget-package

21
推荐指数
4
解决办法
1万
查看次数

Visual Studio 2012程序包管理器控制台错误

尝试使用程序包管理器控制台安装任何内容时,出现此错误:

Install-Package : The schema version of 'Microsoft.Bcl' is incompatible with version 2.0.30625.9003 of      NuGet. Please upgrade NuGet to the latest version from 
http://go.microsoft.com/fwlink/?LinkId=213942.
At line:1 char:1
+ Install-Package Moment.js
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : NotSpecified: (:) [Install-Package], InvalidOperationException
+ FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand
Run Code Online (Sandbox Code Playgroud)

package-managers nuget-package visual-studio-2012

21
推荐指数
3
解决办法
3万
查看次数

自动包还原:无法找到包的版本

我们正在使用改进的自动包恢复过程来恢复丢失的NuGet包.

构建时,恢复对话框会在从包源开始下载时弹出,这是正确的:

恢复对话框

我可以看到包正在恢复到packages文件夹中,但它没有完成恢复所有这些.我收到以下类型的错误:

Error   10  NuGet Package restore failed for project MyProject: System.InvalidOperationException: Unable to find version '6.0.1' of package 'Newtonsoft.Json'.
   at NuGet.PackageHelper.ResolvePackage(IPackageRepository repository, String packageId, SemanticVersion version)
   at NuGet.VsEvents.PackageRestorer.RestorePackage(PackageReference package)
   at NuGet.VsEvents.PackageRestorer.RestorePackages(String packageReferenceFileFullPath, IFileSystem fileSystem)
   at NuGet.VsEvents.PackageRestorer.PackageRestore(ProjectPackageReferenceFile projectPackageReferenceFile).
Run Code Online (Sandbox Code Playgroud)

这可能是因为我有多个包源吗?

在此输入图像描述

例如,NuGet可能会在我们的私有包源中搜索'Newtonsoft.Json',而不是在nuget.org源代码中搜索.

.nuget/NuGet.config文件中:

<configuration>
  <packageSources>
    <add key="nuget.org" value="https://www.nuget.org/api/v2/" />
    <add key="private" value="http://privatePackageSource.com/nuget" />
  </packageSources>
  <solution>
    <add key="disableSourceControlIntegration" value="true" />
  </solution>
</configuration>
Run Code Online (Sandbox Code Playgroud)

我们正在使用Visual Studio 2013和NuGet 2.8.5.

编辑:

使用Fiddler,我已经确认NuGet确实在不正确的源中搜索包.它从我的私有存储库请求以下包.

我也阅读了这篇文章并将该activePackageSource部分添加到NuGet.config文件中:

<configuration> …
Run Code Online (Sandbox Code Playgroud)

nuget nuget-package nuget-server visual-studio-2013 nuget-package-restore

21
推荐指数
2
解决办法
4万
查看次数

"Visual Studio Explorers和Designer Package"包未正确加载

每次我在Visual Studio 2015中打开解决方案时,都会收到以下消息:

在此输入图像描述

以下是ActivityLog.xml的最后一项:

<entry>
   <record>827</record>
   <time>2015/12/23 11:26:13.919</time>
   <type>Error</type>
   <source>VisualStudio</source>
   <description>SetSite failed for package [Visual Studio Explorers and Designers Package][Object reference not set to an instance of an object.]:{   at Microsoft.VSDesigner.VSDMenus.Initialize(IServiceProvider serviceProvider)&#x000D;&#x000A;   at Microsoft.VSDesigner.VSDesignerPackage.VSDesignerPackage.Initialize()&#x000D;&#x000A;   at Microsoft.VisualStudio.Shell.Package.Microsoft.VisualStudio.Shell.Interop.IVsPackage.SetSite(IServiceProvider sp)}</description>
   <guid>{8D8529D3-625D-4496-8354-3DAD630ECC1B}</guid>
   <hr>80004003 - E_POINTER</hr>
   <errorinfo>Object reference not set to an instance of an object.</errorinfo></entry>
Run Code Online (Sandbox Code Playgroud)

我遵循在类似问题中找到的建议,但没有成功.

不幸的是,通过扩展和更新重新安装NuGet并不能解决问题.

visual-studio nuget nuget-package visual-studio-2015

21
推荐指数
2
解决办法
9101
查看次数