nanoFramework.Tools.MetadataProcessor.CLI 3.0.51
前缀已保留
dotnet add package nanoFramework.Tools.MetadataProcessor.CLI --version 3.0.51
NuGet\Install-Package nanoFramework.Tools.MetadataProcessor.CLI -Version 3.0.51
<PackageReference Include="nanoFramework.Tools.MetadataProcessor.CLI" Version="3.0.51" />
paket add nanoFramework.Tools.MetadataProcessor.CLI --version 3.0.51
#r "nuget: nanoFramework.Tools.MetadataProcessor.CLI, 3.0.51"
// Install nanoFramework.Tools.MetadataProcessor.CLI as a Cake Addin #addin nuget:?package=nanoFramework.Tools.MetadataProcessor.CLI&version=3.0.51 // Install nanoFramework.Tools.MetadataProcessor.CLI as a Cake Tool #tool nuget:?package=nanoFramework.Tools.MetadataProcessor.CLI&version=3.0.51
欢迎来到 .NET 强小框架元数据处理器仓库
本仓库包含 .NET 强小框架元数据处理器工具。它是一个控制台应用程序,在运行 C# 项目的构建时执行各种任务,例如解析由 Roslyn 生成的 PE 文件、生成 PDBX 文件、生成本地代码的 stub。是 .NET 强小框架工具箱的一部分,还有其他各种用于 .NET 强小框架开发、使用或仓库管理的工具。
版本 2.0 是从 Oleg Rakhmatulin 的原始工作中改编的 C# 应用程序。版本 1.0 是从 .NETMF 工具箱改编的 Visual C++ 应用程序。
使用元数据处理器
元数据处理器可在两个包中使用。
元数据处理器主要用于打包为 MSBuild 任务:nanoFramework.Tools.MetadataProcessor.MsBuildTask。任务很好地集成到 .NET 强小框架构建系统中,并作为 VS 扩展的一部分进行分发。几乎可以通过构建系统处理所有用例,也可以通过设置构建变量(例如,额外的日志记录)来实现。
几乎所有情况下都可以使用构建任务,但有一些情况除外。例如,在运行时生成源代码、通过Roslyn编译代码、在虚拟设备上执行并在进一步处理中使用输出的软件中。需要元数据处理器作为Roslyn的伴侣,将其生成的.NET程序集转换为nanoFramework .pe程序集。第二个包,nanoFramework.Tools.MetadataProcessor.CLI,包含一个针对此目的的CLI版工具。它作为内容打包:如果将其添加到项目中,该工具将与该项目的结果一起分发。如果将包添加到非SDK风格的项目中(例如,.NET Framework项目),请确保为文件设置复制到输出目录属性,因为包管理器不会自动执行此操作。项目中的代码应该运行CLI并带有参数-loadhints、-parse和-compile(按此顺序!)以创建.pe程序集。
开发者指南
克隆存储库
克隆存储库后,使用以下命令实例化子模块:
git submodule update --init --recursive
之后,主解决方案和子模块中包含的mscorelib解决方案中的NuGet包都必须进行还原。这些必须分别进行还原。
向解决方案添加项目
向解决方案添加项目时,必须注意以下事项以配置项目和解决方案:
- nanoFramework项目(.nfproj)必须使用
AnyCPU
配置进行构建。 - msbuild任务的DLL必须使用
x64
进行构建,因为自VS2022以来,Visual Studio使用该架构。 - 需要用于单元测试的任何nanoFramework项目(.nfproj)都必须更改其构建配置,以便它们不会构建。必须将该项目的构建添加到将使用它的单元测试项目的预构建事件中。请参阅MetadataProcessor.Tests项目的预构建事件。添加nanoFramework项目到预构建事件时,非常重要的是添加
-nr=False
标志<sup>[1]</sup>。
- 此标志禁用“nodeReuse”,这是必需的,因为使用了自定义MsBuildTask,该Task也会被重建。“NodeReuse”保留MsBuild的实例,这会干扰自定义MsBuildTask的重建。
反馈和文档
要提供反馈、报告问题和了解如何贡献,请参阅Home存储库。
加入我们的Discord社区这里。
致谢
此项目的贡献者列表可在CONTRIBUTORS中找到。
许可证
nanoFramework元数据处理器工具许可采用MIT许可证。
行为准则
本项目已采用由贡献者承诺定义的行为准则,以明确我们的社区中预期的行为。有关更多信息,请参阅.NET Foundation行为准则。
.NET Foundation
本项目由.NET Foundation支持。
此包没有依赖关系。
NuGet包
此包不被任何NuGet包使用。
GitHub存储库
此包不被任何流行的GitHub存储库使用。
版本 | 下载 | 最后更新 |
---|---|---|
3.0.51 | 35 | 8/13/2024 |