我正在尝试在基于构建器的 java 项目中使用代码生成器。我想...
- 调用生成器
- 编译生成的类,打包它们
- eclipse 查看生成的东西(即让 .classpath 包含这些源)
我花了很多时间在谷歌上搜索一个完整的例子,但无济于事。这里的例子:https ://cwiki.apache.org/confluence/display/BUILDR/How+to+generate+sources+before+compilation
给出了很多错误。这是我尝试过的:
define 'generator' do
compile.with ALL_COMMON_MODULES
end
define 'extras' do
p 'calling generator..'
Java.classpath << ALL_COMMON_MODULES
Java.classpath << projects('generator')
Java.org.foo.generator.Main.main(['../modules/daos', 'target/generated-sources'])
sources = FileList[_("src/main/jeannie/*.*")]
generate = file(_("target/generated-sources") => sources).to_s do |dir|
puts 'generating...'
mkdir_p dir.to_s # ensure directory is created
end
compile.from generate
end
给我一个这样的错误:
RuntimeError: Circular dependency detected: TOP ...
所以我显然在做一些非常非常错误的事情。我很高兴看到使用代码生成的工作示例或项目。