是否在我的生成输出中包含Nuget依赖项? [英] Include Nuget dependencies in my build output?

查看:44
本文介绍了是否在我的生成输出中包含Nuget依赖项?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在构建一个模块化的.NET核心应用程序,它可以在运行时使用MEF加载扩展。我有两个项目,一个是我希望能够在运行时加载的库,然后我有将执行加载的主应用程序。

我的库项目有一些Nuget依赖项。为了在运行时加载库,我需要这些Nuget依赖项在运行时库旁边可用,但是使用VS2017构建时不会将这些Nuget DLL作为输出的一部分。

如何在生成库时包含Nuget DLL?

编辑:我尝试了dotnet publishdotnet pack,但这两个选项都使我成为一个nupkg文件,只包含我的DLL,而不包含我需要的Nuget DLL。此外,我不能在运行时非常轻松地加载nupkg文件,这就是为什么我只想自己获取结果程序集本身的原因。

值得注意的是,我的csproj是这样的:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp1.1</TargetFramework>
    <AssemblyName>JSON.plugin</AssemblyName>
    <IncludeBuiltProjectOutputGroup>true</IncludeBuiltProjectOutputGroup>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="Microsoft.Composition" Version="1.0.31" />
    <PackageReference Include="Newtonsoft.Json" Version="10.0.3" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="....BDDGen.TypesBDDGen.Types.csproj" />
  </ItemGroup>

</Project>

推荐答案

若要使生成过程将缓存文件夹中NuGet包中引用的所有dll文件复制到生成输出中,请在<PropertyGroup>中设置此属性:

<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>

这篇关于是否在我的生成输出中包含Nuget依赖项?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆