You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Robert Gemmell (JIRA)" <qp...@incubator.apache.org> on 2008/11/22 02:28:44 UTC

[jira] Updated: (QPID-1243) Provide mechanism to build management console

     [ https://issues.apache.org/jira/browse/QPID-1243?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Gemmell updated QPID-1243:
---------------------------------

    Attachment: QPID-1243_21nov2008.zip

Hi all,

I have made a buildfile to allow building the java jmx management console using the ant build system. 

I have overridden the 'build' target within the module's own build.xml file and customized it using many of the targets the normal module.xml 'build' target would call, but leveraging some of my own inbetween to achieve the desired result. 

As the the management console is released as platform specific archives, and is quite large, i decided that rather than have the 'build' target construct the entire management console within the java/build/management/eclipse-plugin directory and thus go on to create a jar of it in the java/build/lib directory, i would instead make it arrange the core plugin files within the java/build/management/eclipse-plugin/classes subdirectory in the build tree, resulting in the module jar in java/build/lib being the core rcp plugin which drives the management console functionality. It preserves the same class layout that would have otherwise existed, so tests depending on that work as before.

In order to output usable builds of the complete management console, i did an override on the 'release-bin' target used for the broker and client specific binary archives and used this to drive another buildfile, build-release.xml, which can be used to create management console releases for any supported platform by use of property files to customise which files it uses for the platform specific parts and how it packages them, currently I have made it do win32/win32/x86 and linux/gtk/x86 builds, zipping the windows release and gzipping the linux release. I have added some files, but everything else is still where it was before so the maven build system for the module should be unaffected. I also made a small change to the module.xml file to make the module.name mapping occur slightly earlier, such that the release-bin related properties would get a module name for the management console without any forward slashes in it.

I saw some discussion previously on qpid-dev which seems to have started up again yesterday, about removing the release-bin functionality/target from the build system and making releases with an external system, so I kept the implementation of the buld-release.xml file as self contained as possible. It really only uses the 'release-bin' target to trigger the sequence and otherwise only depends on the added 'build' target to position the plugin files in the build tree and on some naming properties from module.xml to set some of its own properties, which could as easily be set directly instead if required.



I have made a patch (in linux)  of the modified/added ascii files, QPID-1243_21nov2008.patch which can be found in the attached QPID-1243_21nov2008.zip file.

In addition, I have included a couple of new binary files to make the above work, the eclipse executable and the gtk swt rcp plugin for linux. They are also included in the attached zip file. Within trunk, they should be located at:
qpid/java/management/eclipse-plugin/src/main/resources/unix/eclipse
qpid/java/lib/org.eclipse.swt.gtk.linux.x86_3.2.2.jar

Finally, I found that the eclipse rcp libs in java/lib are named incorrectly, they should be in the format <name>_version.jar but are <name>-version.jar, and as a result the console would not load correctly. I updated the build.deps file and renamed them locally to make it work, and include a bash script to accomplish the same: run the rename-rcp-libs.sh script in the qpid/java/lib directory to perform the necessary svn mv commands.

> Provide mechanism to build management console
> ---------------------------------------------
>
>                 Key: QPID-1243
>                 URL: https://issues.apache.org/jira/browse/QPID-1243
>             Project: Qpid
>          Issue Type: Bug
>          Components: Ant Build System, Java Management : JMX Console
>    Affects Versions: M3
>            Reporter: Martin Ritchie
>         Attachments: QPID-1243_21nov2008.zip
>
>
> Summary:
> Currently, there is no way to build the management console using ant, whilst the maven system may still work we should complete the move to ant by also updating the packaging required for the console.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.