I've made progress this week on getting a usable Xcode project generation plugin for Maven 2 and would appreciate testing, comments, and enhancements. If it seems ready for prime time, I'd also like to find someone who could shepherd the code through the process to get it released.

The code is in the Maven sandbox and can be checked out with:

$ svn co https://svn.apache.org/repos/asf/maven/sandbox/trunk/plugins/ maven-xcode-plugin

Install with:

$ cd maven-xcode-plugin
$ mvn install

To generate an Xcode project file for a Maven 2 project:

$ cd myproject
$ mvn xcode:xcode

Which will produce a ${project-name}.xcodeproj file in the current directory.

I haven't made extensive use of Xcode as a Java IDE personally, so the generated projects may be idiosyncratic. If there is a better way to do something, let me know. I just used the first things that worked for me.

The code was originally a derivative of maven-idea-plugin and there may be some additional dead code that needs to be removed or latent features that should be implemented.

The STATUS (https://svn.apache.org/repos/asf/maven/sandbox/trunk/ plugins/maven-xcode-plugin/STATUS) file should describe the current state and any known bugs and follows. Any Apache committer should have commit rights, so feel free to add bugs to the STATUS file or to fix bugs and remove them from the STATUS file.


------------------------
This plugin is experimental.  The mojo has only been tested
a small number of projects.

To use:

$ mvn install

and then

$ cd your-project
$ mvn xcode:xcode


The xcode:xcode mojo will create (if necessary) a your-project.xcodeproj
directory containing project.pbxproj and default.pbxuser. The mojo will write
the files in the XML Property List Serialization, XCode 2.4.1
will immediately rewrite the file in the old-style serialization.

The following issues are known to exist:

Bugs:

Groups are displayed in red (assume that is an indication that something
is wrong).


Todos:

Manifests are not incorporated into the generated jars.

Really kludgy code is used to determine the absolute path
for the dependencies.  I don't know Maven internals
to do any better.

xcode:xcode hard codes executable to launch as junit.swingui.TestRunner.
XCode apparently has JUnit integration, but I've never seen how to set it up. Any working directory set in surefire is not propagated to XCode project.

Multiple source code or resource trees are not supported, or at
least not tested.

Paths containing whitespaces have not been tested.

XCode 3.0 has not been tested. I can't do that until Leopard is released,
but maybe others have access.

Source Code Repository integration.

Web, EAR, EJB modules.


Curt Arnold
[EMAIL PROTECTED]
2007-09-13



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to