创建一个包含.NET Core自定义构建步骤的nuget包

Fio*_*onn 2 msbuild nuget .net-core visual-studio-2017

是否可以创建一个包含自定义构建步骤的nuget软件包(分析生成的程序集并自动生成一些元数据)?目标环境应为具有新.csproj格式的.NET Core(当前使用Visual Studio 2017 RC)。最好的情况是,这只会增加一个msbuild步骤,并且不依赖于项目生成的程序集。

如果看到完整的.NET应该可以实现,但是msbuild和.NET Core的新.csproj的文档目前很少。

nat*_*ter 5

您可以将MSBuild目标添加到“ build”文件夹中的NuGet包中。目标或道具文件名必须与软件包ID匹配。通过“ PackageReference”或packages.config安装时,NuGet将自动将targets / props文件导入csproj,因此,这些文件必须作为有效的MSBuild代码编写。

即,如果您的包名为“ MyClassLibrary”,则可以具有以下布局:

(package root)
    lib/
        netstandard1.3/
            MyClassLibrary.dll
    build/
        netstandard1.3/
            MyClassLibrary.props
            MyClassLibrary.targets
Run Code Online (Sandbox Code Playgroud)

例如,请参阅 NuGet.org上的Microsoft.Extensions.Configuration.UserSecrets或GitHub上的源代码。此程序包使用MSBuild目标在编译步骤之前自动生成程序集属性