适用于Eclipse的Experience Manager开发人员工具 是一个基于 适用于Apache Sling的Eclipse插件 根据Apache许可证2发布。
它提供了几项使AEM开发更轻松的功能:
在使用AEM Developer Tools之前,您需要:
eclipse.ini
配置文件,如中所述 Eclipse常见问题解答.在macOS上,您需要右键单击 Eclipse.app,然后选择 显示包内容 查找您的 eclipse.ini
.
当您完成 要求 如上所示,您可以安装插件:
复制 安装链接.
或者,您可以下载归档文件,而不是使用安装链接。 此方法允许脱机安装,但您不会以这种方式接收未通过自动更新通知。
在Eclipse中,打开 帮助 菜单。
单击 安装新软件.
单击 添加…….
在 名称 字段,输入 AEM Developer Tools
.
在 位置 字段中,复制安装URL。
单击添加。
选中两者 AEM 和 Sling 插件。
单击下一步。
在 安装详细信息 窗口,单击 下一个 再来一次。
接受许可协议,然后单击 完成.
单击 RestartNow 重新启动Eclipse。
在Eclipse中,透视可确定窗口内可用的操作和视图,并支持与Eclipse中的资源进行面向任务的交互。 有关“透视”的更多详细信息,请参见 Eclipse文档。
适用于Eclipse的Experience Manager开发工具 提供AEM透视,使您能够完全控制AEM项目和实例。 要打开AEM Perspective,请执行以下操作:
此 适用于Eclipse的Experience Manager开发人员工具 随附了一个多模块示例项目,可帮助您快速掌握Eclipse中的项目设置。 它还可用作几项AEM功能的最佳实践指南。 了解有关项目原型的更多信息.
按照以下步骤创建示例项目:
在 文件 > 新建 > 项目 菜单,浏览到 AEM 部分并选择 AEM示例多模块项目.
单击下一步。
此步骤可能需要花些时间,因为m2eclipse必须扫描原型目录。
选择 com.adobe.granite.archetypes : sample-project-archetype : <highest-number>
在菜单中,然后单击 下一个.
为示例项目提供以下字段:
单击下一步。
然后,配置Eclipse连接的AEM服务器。
要使用Debugger功能,您需要以调试模式启动AEM — 这可以通过在命令行中添加以下内容来实现:
-nofork -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=10123
单击 完成. 将创建项目结构。
在全新安装中(更具体地说,当从未下载maven依赖项时),您可能会创建项目,但出现错误。 在此情况下,请按照中所述的过程 解析无效的项目定义.
您可以使用 新建项目 创建正确结构的功能:
按照说明创建 示例多模块项目 而且您已经为您创建了以下项目,这些项目允许健康地分离问题:
PROJECT.ui.apps
对象 /apps
和 /etc
内容PROJECT.ui.content
对象 /content
已创作PROJECT.core
对于Java™包(当您想要添加Java™代码时,这些包会变得很有趣)PROJECT.it.launcher
和 PROJECT.it.tests
用于集成测试替换的内容 PROJECT.ui.apps
使用的项目 apps
和 etc
包的文件夹:
PROJECT.ui.apps
> src
> main
> content
> jcr_root
> apps
.apps
文件夹并选择 显示位置 > 系统资源管理器.apps
和 etc
您现在应该看到的文件夹,并放在此处 apps
和 etc
内容包的文件夹。PROJECT.ui.apps
项目并选择 刷新.然后对 PROJECT.ui.content
并将其内容文件夹替换为您的包之一:
PROJECT.ui.content
> src
> main
> content
> jcr_root
> content
.PROJECT.ui.content
项目并选择 刷新.现在您必须更新 filter.xml
这两个项目的文件,以对应于内容包的内容。 为此,请打开 META-INF/vault/filter.xml
在单独的文本/代码编辑器中的内容包文件。
filter.xml
文件可以查找:<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/apps/foo"/>
<filter root="/apps/foundation/components/bar"/>
<filter root="/etc/designs/foo"/>
<filter root="/content/foo"/>
<filter root="/content/dam/foo"/>
<filter root="/content/usergenerated/content/foo"/>
</workspaceFilter>
对于已拆分为两个项目的包内容,还必须将这些筛选规则拆分为两个并相应地更新 filter.xml
这两个项目的文件。
在Eclipse,打开 PROJECT.ui.apps/src/main/content/META-INF/filter.xml
.
替换的内容 <workspaceFilter>
元素的开头的包规则 /apps
和 /etc
例如:
<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/apps/foo"/>
<filter root="/apps/foundation/components/bar"/>
<filter root="/etc/designs/foo"/>
</workspaceFilter>
然后打开 PROJECT.ui.content/src/main/content/META-INF/filter.xml
.
将规则替换为以开头的包规则 /content
.
例如:
<?xml version="1.0" encoding="UTF-8"?>
<workspaceFilter version="1.0">
<filter root="/content/foo"/>
<filter root="/content/dam/foo"/>
<filter root="/content/usergenerated/content/foo"/>
</workspaceFilter>
确保保存所有更改。 您现在可以将该新内容同步到您的AEM实例。
在“服务器”面板中,确保连接已启动,如果未启动,则确保连接已启动。
单击 清理并发布 图标。
完成后,您应在实例上运行包,保存后,任何更改都会自动同步到实例。
如果要从项目重新生成包,请右键单击 PROJECT.ui.apps
或 PROJECT.ui.content
并选择 运行方式 > Maven安装.
现在,您已创建一个目标文件夹,其中包含了您的包(例如,称为 PROJECT.ui.apps-0.0.1-SNAPSHOT.zip
)。
要解决无效依赖项和项目定义,请按照以下步骤操作:
Eclipse下载所需的依赖项。 这可能需要花些时间。
适用于Eclipse网站的官方Apache Sling IDE工具为您提供有用信息:
以下官方 Eclipse 文档有助于设置环境: