Java 启用/禁用测试版/未完成代码的策略和模式

Java 启用/禁用测试版/未完成代码的策略和模式,java,Java,您在运行时启用/禁用测试版功能时采用了哪些策略。 或者类似地,处理未完成的代码,而不是删除代码,只是将其禁用或使其处于休眠状态 在过去,我使用properties/xml文件和/或VM args(-D)来创建一个全局对象,并使用它来检查要启用/禁用哪些功能,但看起来有点笨重。还有其他人处理过类似的问题吗?你在这些案件中做了什么 注意:我知道最佳实践是拥有两个独立的代码分支,并根据它们需要运行的内容分发独立的工件,但“强大的”认为在运行时动态启用/禁用功能更容易,而不是维护单独的分支和集成环境。我

您在运行时启用/禁用测试版功能时采用了哪些策略。 或者类似地,处理未完成的代码,而不是删除代码,只是将其禁用或使其处于休眠状态

在过去,我使用properties/xml文件和/或VM args(-D)来创建一个全局对象,并使用它来检查要启用/禁用哪些功能,但看起来有点笨重。还有其他人处理过类似的问题吗?你在这些案件中做了什么


注意:我知道最佳实践是拥有两个独立的代码分支,并根据它们需要运行的内容分发独立的工件,但“强大的”认为在运行时动态启用/禁用功能更容易,而不是维护单独的分支和集成环境。

我们有相同的问题,我使用相同的推理。我们使用配置文件对其进行控制,如果配置文件不存在,则该功能不会启用

配置文件类似于featureGate.config。每个特性都是一个条目,我们有一个类,它根据该配置检查是否启用或禁用了特定的特性集