Building Joomla! extensions with Phing

This script is intended to be used if you are in a situation where you develop your extensions inside a joomla tree but store them in a repository or folder outside the tree. The script provides functionality to copy the extension by name out of the joomla tree.


Rename to and set the src.dir variable to the Joomla! path. For example


This is where the script will look for the components you are trying to build.

Naming conventions

The script uses the extension prefix to determine the extension type, so you have to use the following prefixes to the extension=VALUE

  • component : “com_”
  • module : “mod_”
  • template : “tpl_”
  • plugin: “plg_GROUP_”

Administrator modules and templates must use the following prefixes

  • module: “mod_admin_”
  • template: “tpl_admin_”

Language files

When using this script, the language files for an extension needs to be stored within the folder of the extension itself and not in the global language folder.

Usage examples

Building an extension from the joomla source tree

phing -Dextension=com_content build

Creating a package

Once you have built an extension you can create an installable package from the build using the following command.

phing -Dextension=com_content

This will create a package file “

If you also wish to add a version number you can use the following procedure

phing -Dextension=com_content -Dversion=2.5

Download latest version
Take a peek at the source

Leave a Reply

Your email address will not be published. Required fields are marked *


You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">