C# Nuget:如何使用packages.config重新创建包目录
我已使用Nuget安装了StructureMap 我不想签入已创建的包目录 如何使用C# Nuget:如何使用packages.config重新创建包目录,c#,nuget,C#,Nuget,我已使用Nuget安装了StructureMap 我不想签入已创建的包目录 如何使用packages.config重新创建包目录 我尝试了更新包,但没有成功(没有发生任何事情,我只是第一次得到了一点延迟) My packages.config: 请参见NuGet网站上的这篇文章: 本文展示了如何设置NuGet来恢复解决方案所需的所有包。此NuGet功能称为“NuGet软件包还原”。我知道您已经批准了一个答案,但我想我会分享我所做的 在VS2010中,我进入了工具->库包管理器>包管理器控制台 我
packages.config
重新创建包目录
我尝试了更新包
,但没有成功(没有发生任何事情,我只是第一次得到了一点延迟)
My packages.config:
请参见NuGet网站上的这篇文章:
本文展示了如何设置NuGet来恢复解决方案所需的所有包。此NuGet功能称为“NuGet软件包还原”。我知道您已经批准了一个答案,但我想我会分享我所做的 在VS2010中,我进入了工具->库包管理器>包管理器控制台 我在控制台中键入了这个命令
PM> Install-Package NuGetPowerTools
然后我打了这个
PM> Enable-PackageRestore
这将在我的解决方案的顶层放置一个名为.nuget的文件夹
在那个文件夹中,我创建了一个名为restore.bat的文件,内容是这个
cd ..
for /f "tokens=* delims=" %%i in ('dir /s /b packages.config') do (
.nuget\nuget.exe install -o packages "%%i"
)
cd .nuget
运行bat文件将完全重新安装包文件中的所有内容
为了完成这项工作,我在我的项目中创建了一个名为.nuget的解决方案文件夹,其中包含了bat文件和其他垃圾文件,这样其他开发人员就不用想太多了。哈哈。。。令人惊讶的是,当我将package.config文件从旧的解决方案替换到新的解决方案中,并启动package Manager控制台时,它会自动猜到,如果我想恢复所有的包,它会给我一个按钮。我只是点击了一下,瞧!都做完了。我正在使用Visual Studio 2012。希望它能帮助别人。
谢谢 为什么要更新没有packages.config的项目?它会修改csproj文件,使其具有PackageStore标志。这将设置项目是否具有任何nuget引用,以便在以后向项目添加nuget引用时,无需重新运行该命令。该命令无效:/StructureMap内容未添加。只有powertool的东西。你有没有构建你的应用程序?它在生成时运行还原。@Senient很抱歉,您不想遵循NuGet定义的NuGet最佳实践。此功能是NuGet 1.6版的一部分;获得此功能不再需要安装NuGetPowerTools。因此,我是否仍需要启用包还原并运行还原。bat?启用包还原时,更新包将成为生成过程的一部分;它将msbuild任务添加到.nuget目录,并将其与解决方案生成关联。我尝试了此操作,得到“未能将导入'nuget.targets'添加到myproject。我能做什么?@GuidoG可能会停止使用9年以上问题的答案。”。