我有一个自己的注释处理器 (我们称之为 MyProcessor)和一个项目(我们称之为 MyProject),它通过传递-processor
给javac
.
现在我需要 MyProcessor 来生成一些输出并使其可用于 MyProject。
我有以下选项(和问题):
让 MyProcessor 将文件写入由属性指定的路径
user.dir
。
问题:从 MyProcessor 的角度来看,user.dir
始终是我的主目录,而不是 MyProject 的路径。javac
使用'-A
选项将 MyProject 的当前目录传递给 MyProcessor 。
问题:这是一个难看的硬编码路径:/some/path/to/MyProject/
.让 MyProcessor 生成一些源文件,然后
javac
与 MyProject 一起编译,以便 MyProject 可以引用这个编译的类并从中检索数据。
问题:对于这么简单的(?)任务来说太复杂了。还有哪些其他选择?
有人可以建议,如何进行?