Rob*_*Rob 189 visual-studio-2010 visual-studio nuget
我目前正在开发一个最初包含一个项目(My.First.Project.Name)的解决方案.我通过执行以下命令安装了Castle Windsor:
Install-Package Castle.Windsor
Run Code Online (Sandbox Code Playgroud)
我刚刚My.Second.Project.Name在解决方案中添加了另一个项目(),并希望将Castle Windsor安装到这个项目中,但是当我Install-Package Castle.Windsor再次运行时,我收到错误:
'Castle.Core 2.5.2'已安装
'Castle.Windsor 2.5.2'已安装
My.First.Project.Name已经引用'Castle.Core
2.5.2'My.First.Project.Name已经有了参考'Castle.Windsor 2.5.2'
所以我的问题是:如何说服NuGet软件包管理器将软件包安装到第二个项目中?
dav*_*owl 319
有3种方法:).
在NuGet 1.1(最新版本)中,我们改进了powershell管道,因此您可以这样做:
Get-Project -All | Install-Package SomePackage
Run Code Online (Sandbox Code Playgroud)
这将在您的所有项目中安装"SomePackage".您可以使用通配符来缩小哪些项目:
Get-Project Mvc* | Install-Package SomePackage
Run Code Online (Sandbox Code Playgroud)
这将使用通配符语义(在这种情况下,查找以mvc开头的所有项目).
Get-Project SomeProject | Install-Package SomePackage
Run Code Online (Sandbox Code Playgroud)
这将SomePackage安装到SomeProject而不是其他任何东西.
Haa*_*ked 139
有两种方法.
如您所知,软件包管理器控制台有一个下拉列表,列出了解决方案中的项目.
另一种方法是使用-Project标志.关于它的好处是它为您提供了Intellisense项目名称!例如:
Install-Package SomePackage -Project MvcApplication2
Run Code Online (Sandbox Code Playgroud)
Rob*_*Rob 82
答案是,令人尴尬的是,盲目地简单.
"包管理器控制台"在其工具栏中有一个标题为"默认项目"的下拉列表,将项目更改为My.Second.Project.Name允许Install-Package Castle.Windsor将包安装到第二个项目中.
Tom*_*dee 13
在Visual Studio 2015中(从Nuget v3.1.2开始),语法现在是:
Install-Package ThePackage -ProjectName YourProjectName
Run Code Online (Sandbox Code Playgroud)
注意: - 项目名称 vs -Project
在Visual Studio中,您可以转到Tools -> NuGet Package Manager -> Manage NuGet Packages for the entire Solution.从那里,选择要在项目之间共享的Nuget包,然后单击Manage.这将允许您将特定的已安装NuGet包添加到您想要的任何其他项目.
小智 6
如果你只是需要从现有的项目复制软件包到新的,只是复制和/或修改packages.config文件到新的项目并运行 Update-Package -reinstall -Project YourProjectName