A plugin for Jetbrains IntelliJ IDEA to support developing Liferay components.
Note that there is an official plugin for IntelliJ from Liferay (which I contribute to regularly). This plugin here should be considered experimental. Both plugins cannot be installed at the same time.
This plugin mainly focuses on code completion features. It gives IntelliJ IDEA more information about typical Liferay files and project structures. By this, the existing code completion features of IntelliJ can be used for Liferay specific files, too. There is no user interface for the plugin. Improvements have been made in the following areas:
- Editing Liferay XML files is improved, e.g. by providing the XML Schema files for mostly all Liferay specific XML files.
- For JavaScript files the plugin provides you with libraries for the Liferay barebone Javascript files and AlloyUI.
- For Velocity and Freemarker files in Layout Templates and Themes the plugin provides code completion for known variables and theme settings.
- Also, for Journal Templates and Application Display Templates known variables are provided, including variables from Journal structures.
- For CSS / SCSS files references to the parent theme are resolved and specific placeholders like @theme_image_path@ are detected.
- When editing JSP files you have access to the original JSPs (in JSP hooks or web fragments). Additionally, code completion is possible for Liferay or AUI taglibs including cssClasses and language keys.
- Known properties for OSGi components are provided (e.g. Portlet properties).
- You can jump forward and backward between the service.xml and the implementation class.
- Support for groovy scripts (Liferay admin console).
- Code completion and documentation are available for portal.properties
- Support for developing fragments is integrated.
- Resource Bundle files can be resolved for Language Support
- Support for Testing frameworks
- Developing Client Extensions
- Implementing functionality using Headless API
- Helping you when Updating Liferay
- IntelliJ 2024.1 and above (Community)
- IntelliJ 2024.1 and above (Ultimate)
- Liferay 6.1 CE / EE
- Liferay 6.2 CE / EE
- Liferay 7.0, 7.1, 7.2, 7.3, 7.4 / DXP
- Maven
- Gradle (Liferay 7.0, 7.1, 7.2, 7.3, 7.4 / DXP only)
- Npm
See Releases to download binary release versions.
For automatic updates configure the following URL as custom repository in IntelliJ IDEA:
https://raw.githubusercontent.com/dmarks2/liferay-plugin-intellij/master/updatePlugins.xml
This plugin uses a Gradle based IntelliJ Plugin development.
To build the plugin, just run gradle build
. The build script downloads required files automatically.
Contributions are welcome.
- Indent does not work properly inside
<aui:script>
-Tags containing other tags like<portlet:namespace/>
. @theme_image_path@
reference in CSS files work, but still shown in red (SCSS works properly)- This plugin cannot be installed together with the official plugin from Liferay.
- Running groovy scripts in Liferay 7.4 (between 7.4.3.46 and 7.4.3.97) is currently not working properly (see https://liferay.atlassian.net/browse/LPS-106390).
See LICENSE.txt.
For third-party licenses see LICENSE-3RD-PARTY.txt.