鉴于我使用 Manifold(一个 Java 编译器插件),更具体地说是预处理器,其行为非常类似于 C/C++ 指令,是否可以根据这些指令拆分代码库。
例如
#if VERSION_1
old java code
#elif VERSION_2
new java code
#else
#error "Unsupported version"
#end if
我想根据定义的版本生成没有指令的源代码。 我不清楚这是否可能。
是的。 Manifold 提供的预处理器指令有效地屏蔽了错误的 #if/elif 指令主体中的代码。指令适用于顶层,因此您可以使用指令来打开/关闭文件中的任何和所有代码。 manifold-preprocessor 文档解释了这一点。