我想把我的终端放到一个单独的文件中,因为我会在生产版本中使用外部词法分析器。我尝试按照using custom terminals definitions的答案。所以我有一个mypackage/Tokens.xtext
文件和一个包含
mypackage/MyDsl.xtext
文件
grammar mypackage.MyDsl with mypackage.Tokens
生成工作正常,但它会在MyDslStandaloneSetupGenerated
中创建一个src-gen
,但不会编译,因为它会调用不存在的mypackage.TokensStandaloneSetup.doSetup()
。它还会生成src-gen/mypackage/services/MyDslGrammarAccess
,它指的是一个也不存在的TokensGrammarAccess
类。所以我的问题基本上是:当我有另一个语法文件时,我还应该做些什么才能使它可用?
答案 0 :(得分:1)
您还需要为令牌语法运行生成器。
答案 1 :(得分:0)
答案 2 :(得分:0)
简单原因:
Easier to Read and work with the Grammar for everybody (especially other users)
似乎Xtext仍然不支持使用多个.xtext文件