ANTLR 3.1.3的内部EBCDIC支持?

ANTLR 3.1.3的内部EBCDIC支持?,antlr,antlr3,ebcdic,Antlr,Antlr3,Ebcdic,我试图在带有本地EBCDIC字符集的系统上使用ANTLR 3.1.3 即使是这样一个简单的语法: lexer grammar test; GENERIC_ID : (LETTER)* ; fragment LETTER : 'a' .. 'z' ; 在初始编译java org.antlr.Tool test.g期间导致以下错误: error(10): internal error: problem parsing group <unknown>: line 1:1: unex

我试图在带有本地EBCDIC字符集的系统上使用ANTLR 3.1.3

即使是这样一个简单的语法:

lexer grammar test;

GENERIC_ID
: (LETTER)*
;

fragment LETTER
: 'a' .. 'z'
;
在初始编译java org.antlr.Tool test.g期间导致以下错误:

error(10):  internal error: problem parsing group <unknown>: line 1:1: unexpected char: 0x7 : line 1:1: unexpected char: 0x7
org.antlr.stringtemplate.language.GroupLexer.nextToken(GroupLexer.java:233)
antlr.TokenBuffer.fill(TokenBuffer.java:69)
antlr.TokenBuffer.LA(TokenBuffer.java:80)
antlr.LLkParser.LA(LLkParser.java:52)
antlr.Parser.match(Parser.java:210)
org.antlr.stringtemplate.language.GroupParser.group(GroupParser.java:120)
org.antlr.stringtemplate.StringTemplateGroup.parseGroup(StringTemplateGroup.java:792)
org.antlr.stringtemplate.StringTemplateGroup.<init>(StringTemplateGroup.java:274)
org.antlr.stringtemplate.PathGroupLoader.loadGroup(PathGroupLoader.java:67)
org.antlr.stringtemplate.StringTemplateGroup.loadGroup(StringTemplateGroup.java:969)
org.antlr.stringtemplate.StringTemplateGroup.loadGroup(StringTemplateGroup.java:955)
org.antlr.codegen.CodeGenerator.loadTemplates(CodeGenerator.java:198)
org.antlr.codegen.CodeGenerator.genRecognizer(CodeGenerator.java:292)
org.antlr.Tool.generateRecognizer(Tool.java:607)
org.antlr.Tool.process(Tool.java:429)
org.antlr.Tool.main(Tool.java:91)
error(10):  internal error: test.g : java.lang.IllegalArgumentException: Can't find template outputFile.st; group hierarchy is [null]
org.antlr.stringtemplate.StringTemplateGroup.lookupTemplate(StringTemplateGroup.java:507)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(StringTemplateGroup.java:392)
org.antlr.stringtemplate.StringTemplateGroup.getInstanceOf(StringTemplateGroup.java:404)
org.antlr.codegen.CodeGenerator.genRecognizer(CodeGenerator.java:314)
org.antlr.Tool.generateRecognizer(Tool.java:607)
org.antlr.Tool.process(Tool.java:429)
org.antlr.Tool.main(Tool.java:91)
语法文件似乎得到了适当的处理,但似乎是内部原因导致了一些问题。无论我在语法文件中使用什么字符,非法字符似乎总是0x7

我不能在具有本地EBCDIC字符集的系统上编译ANTLR吗?有什么建议吗

更新:问题似乎出在模板文件.stg文件中。如果我将codegen/templates目录中的文件也转换为EBCDIC ANTLRCore.sti,那么编译似乎就完成了。有没有办法告诉java/antlr不要以本地编码读取这些文件?或者这些模板文件在其他编码中可用?否则,我不得不手动转换并替换每一个