gpt4 book ai didi

c# - Visual Studio 2019 中的 ANTLR4 运行时问题

转载 作者:行者123 更新时间:2023-12-03 08:38:49 31 4
gpt4 key购买 nike

我正在尝试让antlr在VS中工作。好久没碰VS了。我已经根据 Antlr 在线文档添加了 AntlrVSIX 扩展,这为我创建了一个示例计算器项目,但我无法编译它(我卸载并重新安装了 AntlrVSIX,但它对以下问题没有影响)。

VS 提示“找不到类型或命名空间名称“Antlr4”(是否缺少 using 指令或程序集引用?)”并指向“using Antlr4.Runtime.Misc;”行(以及更多类似的内容)。

如果我查看菜单“工具”:NuGet Package Manager:管理解决方案的 NuGetPackages...,它会清楚地显示 Antlr4.Runtime.Standard 存在并已安装(显示版本 4.8.0)。

我想我必须在我的项目中添加对此 dll 的引用,因此我在解决方案资源管理器中右键单击“引用:添加引用...”,但无论我如何搜索,我都无法在任何列表中找到它。

有一个浏览按钮,我想我可以用它直接链接到 DLL,所以我搜索了磁盘,找到了 dll 并链接到了它。现在,所有这些错误都消失了,但这不可能是正确的方法。

那么如何使用 References:Add Reference... 正确添加对它的引用? VS 知道它在那里,它会显示它,但不会让它被这样引用,因为它不会通过引用在 VS 中显示它:添加引用...

最佳答案

关于您的具体问题,是的,您不想添加对 dll 的引用。相反,您需要在 csproj 中为这些依赖项添加“ ”。所有这些都存在于 Nuget.org 中。因此,在 VS2019 中,右键单击解决方案管理器中的项目,然后查找“管理 Nuget 包”以添加 Antlr4BuildTasks 和 Antlr4.Runtime.Standard。

注意,我一直在更新 Antlrvsix 扩展,但已经 2 个月没有发布了,这比我平常的时间表要长,因为下一个版本有大量的更改。我将在一周内剪掉第 8 版。 VS2019中的模板已被删除,因为它已经过时了。它使用古老版本的 Antlr4BuildTasks。相反,使用 Antlr4BuildTasks.Templates v8.1 从头开始​​创建 C# 项目。请按照指示 here 。您无需下载Antlr工具包、Java,也无需设置任何环境变量。你甚至不需要使用 VS2019。您只需要 Net Core 3.1 并安装 Antlr4BuildTasks.Templates。然后,在命令行 shell 中键入“mkdir foo; cd foo; dotnet new antlr; dotnet Restore; dotnet build; dotnet run”,以使用 Antlr4 创建 C# 应用程序。创建应用程序后,您可以将其修改为您需要的内容。如果您从尚未安装 Antlr 的 Net Standard 或 Net Core 项目开始,则需要在项目引用中添加 Antlr4.Runtime.Standard 4.8 和 Antlr4BuildTasks 8.1,添加所有语法和驱动程序以进行设置和调用解析器——比较难做,但是可以通过VS来完成,或者你可以更容易、更快地编辑CSPROJ文件。 Antlr4BuildTasks 会查看您的 CSPROJ 文件,并会看到引用了 Antlr4.Runtime.Standard 4.8,然后将使用正确版本的 Antlr JAR 文件来生成解析器和词法分析器。有任何问题请告诉我。

关于c# - Visual Studio 2019 中的 ANTLR4 运行时问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63191238/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com