如何重命名现有的 Hybris 扩展
How to rename an existing Hybris extension
我正在研究 Hybris,我使用默认设置的 hybris 命令 (ant extgen) 生成了一个新的扩展。在扩展生成期间,我没有更改默认值,比如我让项目名称为“training”。我开始开发一些代码只是为了尝试它,但现在我写了很多代码,而不是生成一个新的扩展,我试图将“培训”重命名为一个更适合我的项目的新名称。
我的问题是 - 是否有任何快捷方式可以将“培训”重命名为新名称。通过重命名,我不是指标准的 intellij 或 eclipse 模块重命名,而是更新所有引用扩展名“training”的扩展特定属性。是否有任何 hybris ant 命令?
我不这么认为。创建一个新的并将代码移动到新的扩展中也可能更容易。
不,这是不可能的。生成的扩展本身是从模板创建的,其中单词 "training" 被插入到许多地方(class 名称、包名称、配置...)。
另一种方法是查看 ext-template 文件夹 (6.7)。样板都有。在模板中搜索任何标记并在生成的扩展中进行适当的更改。
根据您的扩展数量,这也需要一些时间......您首先需要了解 extgen 的工作原理。
这是我能想到的方法
您可以将您的扩展声明为 extgen
的模板,然后基于它使用新的名称和结构生成一个新的扩展。
让我将 training
作为您要转换为其他名称的当前扩展名。以下是您需要执行的步骤。
- 确保您的扩展(培训)在 localextensions.xml
中
更新 extensioninfo.xml 通过添加以下元标记将扩展标记为模板
<meta key="extgen-template-extension" value="true"/>
长得像
<coremodule generated="true" manager="org.training.jalo.TrainingManager" packageroot="org.training"/>
<meta key="extgen-template-extension" value="true"/>
<webmodule jspcompile="false" webroot="/training"/>
创建具有以下属性的 extgen.properties 内部训练 extension/folder
请注意,如果您当前的扩展名为不同的名称,那么在这种情况下您需要相应地更改以下值。
extgen.properties:
YEXTNAME_TOKEN=培训<br>
YMODULE_TOKEN=培训<br>
YMODULE_PACKAGE_ROOT=培训<br>
YMODULE_CLASS_PREFIX=培训<br>
YPACKAGE_TOKEN=org.training<br>
YMANAGER_TOKEN=培训经理<br>
YCLASSPREFIX_TOKEN=培训<br>
YGENERATED_TOKEN=已生成
运行 ant extgen 和 select 你的扩展(训练)来自给定的 selection 选项并给出当它提示时,按照你想要的方式命名和打包。
现在用 localextensions.xml
中新创建的扩展替换训练扩展
在需要的地方进行测试和修补! :-)
我正在研究 Hybris,我使用默认设置的 hybris 命令 (ant extgen) 生成了一个新的扩展。在扩展生成期间,我没有更改默认值,比如我让项目名称为“training”。我开始开发一些代码只是为了尝试它,但现在我写了很多代码,而不是生成一个新的扩展,我试图将“培训”重命名为一个更适合我的项目的新名称。
我的问题是 - 是否有任何快捷方式可以将“培训”重命名为新名称。通过重命名,我不是指标准的 intellij 或 eclipse 模块重命名,而是更新所有引用扩展名“training”的扩展特定属性。是否有任何 hybris ant 命令?
我不这么认为。创建一个新的并将代码移动到新的扩展中也可能更容易。
不,这是不可能的。生成的扩展本身是从模板创建的,其中单词 "training" 被插入到许多地方(class 名称、包名称、配置...)。
另一种方法是查看 ext-template 文件夹 (6.7)。样板都有。在模板中搜索任何标记并在生成的扩展中进行适当的更改。 根据您的扩展数量,这也需要一些时间......您首先需要了解 extgen 的工作原理。
这是我能想到的方法
您可以将您的扩展声明为 extgen
的模板,然后基于它使用新的名称和结构生成一个新的扩展。
让我将 training
作为您要转换为其他名称的当前扩展名。以下是您需要执行的步骤。
- 确保您的扩展(培训)在 localextensions.xml 中
更新 extensioninfo.xml 通过添加以下元标记将扩展标记为模板
<meta key="extgen-template-extension" value="true"/>
长得像
<coremodule generated="true" manager="org.training.jalo.TrainingManager" packageroot="org.training"/> <meta key="extgen-template-extension" value="true"/> <webmodule jspcompile="false" webroot="/training"/>
创建具有以下属性的 extgen.properties 内部训练 extension/folder
请注意,如果您当前的扩展名为不同的名称,那么在这种情况下您需要相应地更改以下值。
extgen.properties:
YEXTNAME_TOKEN=培训<br> YMODULE_TOKEN=培训<br> YMODULE_PACKAGE_ROOT=培训<br> YMODULE_CLASS_PREFIX=培训<br> YPACKAGE_TOKEN=org.training<br> YMANAGER_TOKEN=培训经理<br> YCLASSPREFIX_TOKEN=培训<br> YGENERATED_TOKEN=已生成
运行 ant extgen 和 select 你的扩展(训练)来自给定的 selection 选项并给出当它提示时,按照你想要的方式命名和打包。
现在用 localextensions.xml
中新创建的扩展替换训练扩展
在需要的地方进行测试和修补! :-)