包含此页的版本:
不含此页的版本:
此示例使用 ErrorProne.NET.CoreAnalyzers 库来演示如何从 NuGet 安装代码分析器或源生成器:
errorprone.net.coreanalyzers<version-number>\analyzers\dotnet\cs.所需的文件应位于此文件夹中,名为ErrorProne.NET.Core.dll,ErrorProne.Net.CoreAnalyzers.dll和RuntimeContracts.dll.RoslynAnalyzer进入“资源标签”子菜单中的文本输入窗口,然后按 Return 键。此标签必须与示例完全匹配,并且区分大小写。为第一个分析器创建标签后,它将显示在“资产标签”子菜单中的可用标签列表中。您可以单击菜单中的标签名称以将其分配给其他分析器。Unity 识别 RoslynAnalyzer 标签,并将具有此标签的资产视为 Roslyn Analyzer 或源生成器。将标签分配给分析器时,Unity 会重新编译脚本一段代码,允许您创建自己的组件、触发游戏事件、随时间修改组件属性以及以您喜欢的任何方式响应用户输入。更多信息
请参阅术语表在分析器范围内,并根据分析器中的规则分析这些脚本中的代码。与分析器位于同一程序集定义内的任何脚本都在该分析器的范围内。对于 Assets 文件夹根级别的分析器,Unity 会将项目中的所有文件视为范围内。有关范围的详细信息,请参阅分析器范围和诊断。
若要测试分析器是否正常工作,请按照以下示例作。如果已正确安装分析器,则 ErrorProne.NET 分析器在分析示例中的代码时会引发警告。
创建一个名为RethrowError.cs.将以下代码复制到此脚本中并保存文件:
using System;
using UnityEngine;
public class RethrowError : MonoBehaviour
{
void Update()
{
try
{
DoSomethingInteresting();
}
catch (Exception e)
{
Debug.Log(e.Message);
throw e;
}
}
private void DoSomethingInteresting()
{
throw new System.NotImplementedException();
}
}
保存文件时,Unity 会重新编译脚本,并在脚本的代码上运行任何适用的分析器。正确安装 ErrorProne.NET 分析器后,它会在控制台窗口Unity 编辑器窗口,显示 Unity 或您自己的脚本生成的错误、警告和其他消息。更多信息
请参阅术语表关于上述代码:
Assets\RethrowError.cs(14,23): warning EPC12: Suspicious exception handling: only e.Message is observed in exception block.
Assets\RethrowError.cs(15,19): warning ERP021: Incorrect exception propagation. Use throw; instead.