有没有办法覆盖Java中的行号(例如,通过使用某种预处理器指令)?
我正在使用Janino"编译"高级语言,直到Java字节代码.我需要编译器错误来报告原始文件中的行,而不是生成的Java代码.
C#有#line指令,我已成功利用它将源文件中的行号映射到编译结果.Java需要相同的东西.
谢谢!
我从未见过它用于JSP之外的其他东西,但JSR-45被设计用于任何源语言的目的.该过程涉及以特殊格式("SMAP")创建第二个文件,该文件将原始源中的行号映射到生成的Java源代码中的行号.