【发布时间】:2016-06-30 14:41:25
【问题描述】:
首先:对不起我的英语不好......
我有一个带有类似外部词法分析器的 2.4 Xtext 项目:
// In order to separate lexer and parser (both are managed in the same time by default)
fragment = org.eclipse.xtext.generator.parser.antlr.ex.rt.AntlrGeneratorFragment {
antlrParam = "-Xconversiontimeout"
antlrParam = "30000"
options = {
backtrack = true
backtrackLexer = false
}
}
// Uses ANTLR Tools to compile a custom lexer and will also add a binding in the runtime module to use the Lexer
fragment = parser.antlr.ex.ExternalAntlrLexerFragment {
// A grammar file with .g will be expected in this package (should be stored in src folder)
lexerGrammar = "com.group.xxx.xtext.customlexer.CustomEditorLexer"
runtime = true
antlrParam = "-lib"
// This is the folder where the lexer will be created
antlrParam = "${runtimeProject}/src-gen/com/group/xxx/xtext/customlexer"
}
现在我尝试将此项目迁移到 maven xtext 2.10,但我不知道如何使用新的 xtext 生成器来做到这一点。 (该项目运行没有问题,但我的外部 lexar 没有)。
我尝试做这样的事情:
language = StandardLanguage {
name = "com.group.xxx.xtext.Editor"
fileExtensions = "xxx"
serializer = {
generateStub = false
}
parserGenerator = {
combinedGrammar = false
antlrParam = "com.group.xxx.xtext/src/com/group/xxx/xtext/customlexer"
options = {
backtrack = true
backtrackLexer = false
}
词法分析器和解析器被分为 gen 文件夹,但 xtext 继续使用生成的词法分析器而不是我的。
请您给我建议吗?
【问题讨论】: