From: Eric M. Ludlam <eric@si...> - 2008-12-31 13:28:49
>>> joakim@... seems to think that:
>I've improved Maven2 support for EDE a bit.
>Theres a long way left. The only thing it realy does is enables
>compiling with maven in the projects root dir. Even this doesnt quite
>work for nested maven projects.
There are two ways for EDE to wrap a project. At the simplest level,
it will mark the "root" of many maven projects. What I sent you
assumed only one pom.xml file per tree, so to make that work,
something special would need to be done.
Alternately, EDE would want to track one project per directory. If
you want a mix, it is certainly possible. The existing framework just
doesn't make it simple.
Basically, to make a mix work, you would need to scan up to / looking
for pom.xml files, then stick sub-projects in the :subproj slot on the
>- EDE seems to think that files are targets, in that you create target
>objects for files. I dont really grok this, I'd call the files
>"dependencies" and the makefile targets for, well, targets.
The tree is supposed to be like this:
So files are files, and each file belongs to a target, and targets
belong to a project.
Some alternate build styles don't really map to this too well. It is
mostly a grouping mechanism so you can operate on groups of files.
>- maven2 doesnt state the "targets" as such in the pom.xml. They are
> implicitly given, and called "goals". Therefore I'd like to provide my
> own ede target specification, for instance id like the ede targets
> "install" and "clean" to start with. these would be hard-coded, and
> not calculated as for makefiles. How do I do this?
The EDE targets don't map to functional operations. They just group
files together. In the project style used by CEDET, things like
'clean' and 'dist' show up during code generation only.
If you want to add things to the menu so you can select "clean" from
the menu, then there is a :menu :class allocation slot you can add to
the maven project to add whatever you like.
>- there is a notion of parent/child relationships between projects in
> maven2 but I dont see a clear way of implementing this in EDE, since
> you need a lot of xml parsing for this to work.
If they are hierarchical in the file system, then a file system
scanner should work.
Parsing XML in Emacs isn't too hard. Isn't there `xml-parse-file'?
Eric Ludlam: eric@...
Siege: http://www.siege-engine.com Emacs: http://cedet.sourceforge.net