企业🤖AI Agent构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### 答: > 一个项目若想永不停机, 那就意味着项目内任何文件的变化都可以在项目运行状态时被正常的读取和加载, 能甄别文件或目录的[创建、修改、删除]等操作, 并因之变化而产生响应, 达到不停机还能做各种改动. > > OFBiz系统, 作为一个由Java编写的框架, 因为Java需要预编译执行的原因, 其必定会因为Java代码而重启, 当然, 也有技术可以做到动态编译并使用Java代码, 但是, OFBiz并没有实现, 所以这里不细究这块. > > 这里我们大概了解下规律: > - 数据实体改变或改变OFBiz配置文件或调整了Java类, 这些都是需要重启的. > - 改变OFBiz的请求、XML逻辑处理文件、外观等文件时不需要重启. #### 需要重启OFBiz才能生效的情况如下 > 模块内的目录或文件 > - 目录[entitydef]内[entitymodel.xml]文件的改动 > - 目录[lib]和[src]内文件的改动 > - 目录[config]内的非[\*UiLabels.xml]文件的改动 > - 特殊文件[web.xml]的改动 > - 文件名中含[component]的xml文件 > ... #### 无需重启OFBiz, 但要清空缓存才能生效的 > 清空缓存请看: [如何清空缓存呢?](如何清空缓存呢.md) > - 目录[config]内的[\*UiLabels.xml]文件的改动 > - 目录[servicedef]内[services.xml]文件的改动 #### 无需重启OFBiz, 即时生效的 > 如这些特征的文件: ` controller.xml; Screens.xml; Froms.xml; Menus.xml; .groovy; .bsh; .ftl; .html; .jsp; .css; .js; .jpg; .swf 等 ` > - 请求[\*controller.xml]的配置文件 > - 屏幕[\*Screens.xml]的配置文件 > - 屏幕[\*Froms.xml]的配置文件 > - 屏幕[\*Menus.xml]的配置文件 > - [groovyScripts]或[WEB-INF/actions]目录下的[\*.groovy]脚本文件 > - [script]或[mililang]目录下的[\*.xml]minilang脚本文件 > - freemarker: FTL模版文件 > #### 重启OFBiz都不生效, 需要人工操作的有 > 这种情况一般针对[Data.xml]数据文件, 因为这些文件一般不在非初始化数据库的情况下被运行时载入. 这就需要人工操作了, 这个可以看[OFBiz中怎么手工导入Data.xml数据](OFBiz中怎么手工导入Data.xml数据.md)