Details
-
Type:
New Feature
-
Status:
Open
-
Priority:
Major
-
Resolution: Unresolved
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: osxappbundle
-
Labels:None
-
Environment:Mac OS X will be the only environment that the developer tools are installed, but the work should be performed across all platforms and operating systems.
-
Complexity:Intermediate
Description
I think the feasibility of the osxappbundle maven plugin is very good, but the workflow is too tightly coupled. The expectation is that an application bundle is going to be created, then wrapped in a disk image. However, I need to create an application bundle, package that in an installer, and then wrap that installer in a disk image.
What I would like to do is have the workflow broken up into three different goals, one for each specific task.
- Create Application Bundle (.app)
- Create Installer (.pkg)
- Create Disk Image (.dmg)
The attached file has my solution to this request. Basically I split the work between three mojos, CreateApplicationMojo, DmgMojo, and PkgMojo. I have thoroughly documented the new behavior and made modifications throughout the site to account for my changes. I have attempted to create any unit tests and integration tests that I thought were useful and applicable, and those are included in the sibling project included in the tar file.
Note that some of the behavior was changed and I'm not sure if the original goals can be achieved with the solution I chose to implement. As an example, the documentation contained in examples/directrun.apt is no longer accurate because the workflow has been genericized, and it remains in the site tree, but is not hyperlinked.
I tried to keep the naming conventions that existed in the original implementation of the plugin as much as possible, and favored the conventions outlined in the mojo developer's coding conventions for additions.
The svn info for the version I applied changes to is:
URL: http://svn.codehaus.org/mojo/trunk/mojo/osxappbundle-maven-plugin
Repository Root: http://svn.codehaus.org/mojo
Repository UUID: 52ab4f32-60fc-0310-b215-8acea882cd1b
Revision: 10438
Node Kind: directory
Schedule: normal
Last Changed Author: david
Last Changed Rev: 10409
Last Changed Date: 2009-08-21 19:28:27 -0500 (Fri, 21 Aug 2009)
I am interested in this making it into the plugin, and willing to be a maintainer, so please don't hesitate to contact me with any additional requests/suggestions/reprovals.