根据adobe文章,运行模式的优先级顺序为jar file > sling properties file > system properties
。
在jar文件的命名中指定的运行模式优先。 如果在jar文件的命名中未指定运行模式,则 使用sling.properties文件中的值。如果运行方式不是 在jar文件或sling.properties的命名中指定 文件,则使用系统属性(或JVM参数)。
参考: https://helpx.adobe.com/experience-manager/kb/RunModeSetUp.html
在另一篇文章中,解决的顺序表示为sling properties > -r option > system properties > jar file
(参考:https://helpx.adobe.com/experience-manager/6-3/sites/deploying/using/configure-runmodes.html)。
有两种运行模式,标准模式和自定义模式。标准运行模式在安装时使用,然后在实例的整个生命周期内固定不变,无法更改。可以通过双击jar或通过命令行通过两种方式完成安装。
双击JAR(未命名为aem<optional-version-or-indentifier>-<standard-run-mode>-p<port-number>
)可设置启动脚本(系统属性)system properties > jar
中指定的运行方式。如果JAR是按照格式命名的, JAR名称优先jar > system properties
。吊索的特性不在这里。
使用-r(java -jar jarname.jar -r runmode
)通过命令行进行安装,其顺序为-r option > jar
。
运行自定义运行模式,优先顺序为sling properties > -r option
。安装完成后,此处的JAR名称和系统属性就消失了。
:: *运行模式
:: *如果存储库已经存在,将不使用
如果未定义CQ_RUNMODE,请设置CQ_RUNMODE = author
参考:启动脚本(start.bat文件)。
安装完成后,JAR名称和系统属性对确定运行模式无效。可以通过sling properties
和-r option
设置自定义运行模式。在安装时,优先级取决于安装方式以及文件是否以aem<optional-version-or-indentifier>-<standard-run-mode>-p<port-number>
格式命名。帮我解决这个问题。
答案 0 :(得分:0)
AEM中运行模式的优先顺序:
检测aem jar文件(cq-author-p4502.jar)的文件名
start.bat文件属性:例如-Dsling.run.modes = publish,prod
-r选项:java -jar cq-author-p4502.jar -r dev
sling.properties文件
双击jar会将运行模式设置为jar文件名中的名称。如果要从命令提示符开始使用 start.bat文件,然后采用在start.bat中定义的运行模式。 请尝试以下操作:将jar文件和许可证文件复制到任何其他文件夹中,将jar文件名更改为cq-publish-p4503。然后双击jar文件,可以看到发布实例已打开带有4503端口的实例。然后检查start.bat文件,它仍然指向作者和4502,因此这意味着jar文件的名称优先于start.bat文件。希望这可以解释您的查询
答案 1 :(得分:0)
以特定的运行模式启动CQ
如果您为多种运行模式定义了配置,则您 需要定义在启动时使用哪个。有几种 指定使用哪种运行模式的方法;解决顺序 是:
- sling.properties文件
- -r选项
- 系统属性(-D)
- 文件名检测