自由裁剪dotnetcore程序集

裁剪.Net Core

  .Net core发布之后的程序集还是有些大,因为.Net Core是模块化,可以自由的进行裁剪,提取自己需要的程序集.

1. 新建一个项目,这里是控制台程序

//qiufeng.console文件,进入命令行
dotnet new console

2. 修改csproj文件,指定发布在win10 64位系统

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

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>netcoreapp1.1</TargetFramework>
  </PropertyGroup>
   <!--新增加一个节点,并指定为win10 64位-->
  <PropertyGroup>
    <RuntimeIdentifiers>win10-x64</RuntimeIdentifiers>
  </PropertyGroup>

</Project>

3. 进行restore

dotnet resotre

4.发布独立程序包

//-f 指定framework版本为netcoreapp1.1 -r 指定运行系统
dotnet publish -f netcoreapp1.1 -r win10-x64

5. 根据自己程序,进行裁剪

    熟悉*.deps.json文件结构,熟悉程序集间的依赖之后.手动注释相关节点,在运行可执行程序(Windows下,扩展名为*.exe.Linux下没有扩展名)
    裁剪之前:
   .net core 发布的独立运行包    
    裁剪之后:
   .net core 裁剪之后的独立运行包    
   此裁剪是用小程序进行的,等小程序完善之后,在发出.
秋风 2017-06-17