IntelliJ AEM
Plugin for JetBrains IDEs that supports you in developing for Adobe Experience Manager
IntelliJ AEM is a plugin for the IntelliJ platform that aims to support the development for Adobe's Experience Manager. It provides support for custom languages, advanced code completion and refactoring, inspections and quick fixes, and many more features that developers will benefit from every day. In addition, it provides useful tools to simplify interactions with live AEM instances.
*30-day trial available
Feature Highlights
IntelliJ AEM uses several of IntelliJ platform's extension points to provide functionality that helps in developing for Adobe Experience Manager. The Features section presents a comprehensive overview, but here are a few highlights to get you started:



-
Push and pull content
Easily pull content from or push content to AEM from within the IDE — no external tools required
-
Coding assistance
Syntax highlighting, smart code completion, and navigation and refactoring support greatly simplify your developer life.
-
Inspections
Numerous inspections catch potential problems early. Quick fixes speed up your development workflow.
Recent Updates
Here's a list of the most recent releases including their fixes and changes. Please also check out the Features overview for a more thorough description of newly added items.
-
Version 1.10.2
Fixed
- Fixed threading-related assertion errors
-
Version 1.10.1
This update adds compatibility with IntelliJ IDEA 2023.3.
Fixed
- Fixed parser error when single-value property with type declaration is only one character long
-
Version 1.10.0
Added
- Completely revamped completion of properties and child nodes
- Child node completion is based on live templates now
- Child node completion adds common properties and their values can be changed right away
- Improved code style-based formatting after completion
- Completing properties and child nodes takes resource super types into account now
- Added property and child node completion for Coral / Granite UI form components including:
- Generic and form field-specific properties such as
granite:class
- Container components such as
container
,accordion
,tabs
, etc. - Render conditions such as
simple
,privilege
andfeature
, and conditionals likeand
,or
andnot
- Form components like
textfield
,select
,multifield
including their child nodes - Item data sources
- Generic and form field-specific properties such as
- Added support for Sling Model injection annotations provided by ACS AEM Commons, for example
@AemObject
- Added inspection warning about multiple injection constructors in Sling Models
- Added new import modes
merge_properties
andupdate_properties
tofilter.xml
schema
Changed
- Export Content action is now enabled in all source directories
Fixed
- Fixed that nullable annotation was inferred even though field was annotated with
@Default
- Fixed missing read access when finding usages of component
- Fixed that OSGi service reference was marked as invalid when OSGi component does neither define a service interface nor implement any interfaces
- Fixed warning added to workspace filter roots pointing to XML file aggregates such as
_rep_policy.xml
- Fixed missing required property warning on XML elements that start with hex-encoded numbers, for example
_x0031_
- Fixed that quick fix changed property type to
{String}
instead of correct one - Fixed issue where
@Nullable
annotation was not inferred whenInjectionStrategy.OPTIONAL
is used - Fixed parser error when curly brace is used at beginning of single-value property with type declaration
- Completely revamped completion of properties and child nodes