我正在尝试在VS 2015中使用新的Class Library (Package)
项目。
我想定位dnx451
,所以我的package.json
看起来像这样:
{
"version": "1.0.0-beta-1",
"description": "Foo",
"authors": [ "Foo" ],
"tags": [ "" ],
"projectUrl": "",
"licenseUrl": "",
"dependencies": {
"Newtonsoft.Json": "8.0.1",
"Microsoft.AspNet.Razor": "4.0.0-rc1-final",
"Microsoft.Extensions.Configuration": "1.0.0-rc1-final",
"Microsoft.AspNet.Mvc.TagHelpers": "6.0.0-rc1-final",
"Microsoft.Extensions.Configuration.FileProviderExtensions": "1.0.0-rc1-final",
"Microsoft.Extensions.Configuration.Json": "1.0.0-rc1-final",
"Microsoft.Extensions.Configuration.EnvironmentVariables": "1.0.0-rc1-final",
"System.Net.Http": "4.0.1-beta-23516"
},
"frameworks": {
"dnx451": { }
}
}
构建很好,我得到了:
Recaptcha-dnxcore - > C:\用户\史诗\文件\工件\ BIN \富\发布\ Foo.1.0.0-β-1.nupkg
现在我创建一个Web项目并编辑其project.json
文件,使其仅定位dnx451
框架:
"frameworks": {
"dnx451": { }
},
当我添加对Foo
包的引用时,出现错误:
项目WebApplication7中的依赖关系Foo 1.0.0-beta-1不支持框架DNX,Version = v4.5.1。
如何从支持Class Library (Package)
的{{1}}项目创建Nuget包?
根据下面的评论,这是网络应用的完整dnx451
:
project.json
答案 0 :(得分:1)
我按照你问题中提到的相同程序
我在同一个解决方案中创建了类库和Web项目,一切正常。
由于您更专注于将NuGet包目标设为dnx451。我在单独的解决方案中创建了另一个Web应用程序,是的,它会引发错误,因为命名的NuGet包很多" Foo"。我想由于这个包的恢复在引用Global NuGet feed时存在问题。
然后我尝试引用" Foo"使用此链接How to install a Nuget Package .nupkg file locally?
确保新创建的本地Package Source应位于TOP和Offical NuGet的第二位。
在此之后,我在单独的解决方案中恢复了Web应用程序,它构建正常并且也正常运行。甚至我也在控制台应用程序中安装了这个NUGET
希望这会成功。
答案 1 :(得分:0)
类库也应该拥有它自己的project.json
并定义它支持的框架:
"frameworks": {
"dnx451": { }
}
答案 2 :(得分:0)
如果您添加对项目的引用,请不要添加版本号,因为它会在任何Nugget Feed上搜索包。
只需添加对Foo的引用,如下所示:
"Microsoft.Extensions.Logging.Debug": "1.0.0-rc1-final",
"Microsoft.VisualStudio.Web.BrowserLink.Loader": "14.0.0-rc1-final",
"System.Net.Http": "4.0.1-beta-23516",
"Foo": ""
},
答案 3 :(得分:0)
查看this回答。
只有当两个项目都在同一个解决方案中时,才能添加对类库项目的直接引用。
如果您的项目不在同一个解决方案中,则必须转到类库项目属性,打开“构建”选项卡并选中“在构建选项上生成输出”
将在每个项目构建的{SolutionDir} \ artifacts \ bin {ProjectName} {Configuration}目录中创建NuGet包。
要使用该库,请将NuGet包发布到nuget.org或任何其他NuGet源,并使用Visual Studio(References~> Manage NuGet Packages ...)或项目中的dependencies属性将其添加到项目中。 JSON。