Antlr4 - ANTLR 错误在“┐grammar”处缺少 SEMI 并且找不到源文件(CSC compilant)
Antlr4 - ANTLR ERROR missing SEMI at '┐grammar' and could not find source file (CSC compilant)
我在 .NET 目标中有一个使用 ANTLR 的项目,当我使用 ANTLR 添加新项目时它不生成解析器,旧项目工作正常。
grammar MyGrammar;
/*
* Parser Rules
*/
Errors:
Error6 missing SEMI at '┐grammar' C:\... 1 3 MyGrammarLib
Error7 missing COLON at 'MyGrammar' while matching a rule C:\... 1 12 MyGrammarLib
Error5 '╗' came as a complete surprise to me C:\... 1 2 MyGrammarLib
Error4 '´' came as a complete surprise to me C:\... 1 1 MyGrammarLib
当我重新启动并重建时,它无法使用 ANTLR 为所有库生成 CSC,看来我的 Visual Studio 2012 不再支持 Antlr 语言和运行时工具。 重新安装 ANTLR 也没有帮助。
会发生什么?
PK
确保 ANTLR(或者实际上 Java 运行时环境)知道您的文件的编码。
如果它是 UTF-8(有或没有 BOM),这可以通过在 Java 命令行中指定它来完成,例如
java -Dfile.encoding=UTF-8 -jar antlr-4.5-complete.jar
...
我在 .NET 目标中有一个使用 ANTLR 的项目,当我使用 ANTLR 添加新项目时它不生成解析器,旧项目工作正常。
grammar MyGrammar;
/*
* Parser Rules
*/
Errors:
Error6 missing SEMI at '┐grammar' C:\... 1 3 MyGrammarLib
Error7 missing COLON at 'MyGrammar' while matching a rule C:\... 1 12 MyGrammarLib
Error5 '╗' came as a complete surprise to me C:\... 1 2 MyGrammarLib
Error4 '´' came as a complete surprise to me C:\... 1 1 MyGrammarLib
当我重新启动并重建时,它无法使用 ANTLR 为所有库生成 CSC,看来我的 Visual Studio 2012 不再支持 Antlr 语言和运行时工具。 重新安装 ANTLR 也没有帮助。 会发生什么?
PK
确保 ANTLR(或者实际上 Java 运行时环境)知道您的文件的编码。
如果它是 UTF-8(有或没有 BOM),这可以通过在 Java 命令行中指定它来完成,例如
java -Dfile.encoding=UTF-8 -jar antlr-4.5-complete.jar
...