[EMAIL PROTECTED] wrote:
if you can find the time, could you very briefly summarize a few issues you had 
trouble with ? I would like to know if the were genuine issues that have now 
been fixed, if the documentation wasn't clear or if it's something else..
(end of quote)




Wouter -



My previous post was fairly typical of the issues I've run into, and how easy 
it was to go "down the wrong path."



I think the ROOT of the problem for me was a combination of being new to Maven, 
and some early build problems.  I initially checked out the ENTIRE project 
using CVS.  I learn with maven that we are dealing with  a "maven.xml", a 
"project.xml", and a "project.properties."  Fair enough - what's in those?



Well, the AndroMDA is multi-project, and a quick search of my hard drive 
results in 145 project.xml files!  Where to start?



I tried to run simply maven from the root, and it ran for about 10 minutes, but 
it ultimately failed.  I'm not sure why, but I THINK it was doing a test for 
one of the samples.  maven from the root builds EVERYTHING, and thus I figured 
I didn't need to do that, so I started poking around.  Eventually, I found my 
way around the project, but am still unclear on some parts.  It gets REALLY 
confusing with the very similar names: there is the andromda core, the andromda 
plug-in for maven, the andromda app generator for maven.  Once I figured out 
that the maven sub-directory represented the maven plug-in source (I THINK 
that's right  [Embarassed] ) then things improved a bit.  What looks like the 
entire source tree is REPEATED under the maven sub-directory.



After fumbling around with "learning the system", I went on to try to actually 
create my own project.  Had several false starts with that.  The actually 
project structure that was generated had a few bugs in it (my post about a 
reference to "hibernate-.jar" as an example).  Still I had to figure out how 
the project was structured, where all the pieces fit.  I couldn't just do a 
maven from the root of the generated project (I got some errors), but I COULD 
do pieces.  maven mda worked, for example.  I could run just that, and start 
looking at the generated code.  That turned out to be a trap, however, as maven 
mda doesn't generate the DDL files.  etc. etc.



Really, now that I know what I know, the project structure is well organized. 
Assuming a stable release, I'd say its probably a documentaiton thing.  Even 
there - the documentation IS there somewhere, assuming you know where to find 
it. There is just so much of it. The "readme.txt" file created with a generated 
project, for example, does lay everything out. I just went back to the "how to" 
guide for newbies, and it even tells me to read the README.TXT.  I think I read 
it initially, but then moved on, not realizing its importance.  Again, the 
project is so massive, its hard to figure out where to start - what is 
important, and what is not.  Between the HowTo guides, the support forum, the 
readme.txt, etc. I'm evenually am finding my way.



I also made the mistake of trying to learn how to build and customize AndroMDA 
itself, BEFORE learning how to use the system.



While writing this, I'm taking a seroius look at my journey and am trying to 
figure out how much of this is self inflicted. I think one of the pitfalls I 
ran into is that as an experienced developer, I what I REALLY wanted was a 
quick executive summary/birds eye view of the system. Perhaps a web page of 
"AndroMDA in a nutshell", something like this:



Creating your own projects:

1) One everything is installed (follow the directions at http://...) issuing 
maven andromdapp:generate will create a new project. If you need details on 
creating a new project, see http://...



2) The UML file your new project will use is located in 
mda/src/uml/yourProjectName.xmi. Edit this with MagicDraw (yes, you COULD use 
another tool, but you'll be fighting an uphill battle. See the andromda forums 
at http:// for more details on this discussion).



3) How AndroMDA generates code is controlled by the AndroMDA configuration file 
located in mda/conf/andromda.xml.  Options can be configured by you here for 
the various cartridges and are referred to as "namespace properties".  
Properties are documented at http://...



4) Many of the properties used in andromda.xml, as well as other build 
properties specific to your project, appear as maven build properties and be 
configured n the /project.properties file.  Possible options are documented 
here at http://



5) To simply generate initial code, issue maven mda from your project's root 
directory.  To actually BUILD executing code, as well as create the DDL files 
(if using Spring or Hibernate), execute maven install



6) The resulting code from AndroMDA will be located in either the /src or 
/target directories. All generated code that may be overwritten by subsequent 
runs of the code generated are located in the /target directory.  Code that you 
can create by hand (and/or is protected from subsquent overwrites) should be 
located in the /src directory.  



For more details regarding the project structure, be sure to read the 
"readme.txt" file

....



Customizing AndroMDA:

1) The system is composed of:

The AndroMDA core (does the UML translation).  The source code for this is 
found in /andromda, and can be build by issuing maven install from this 
directory.



2) "Cartridges" which does specific types of translations (such as hibernate). 
The source code is found in /cartridges/andromda-hibernate.  Details about this 
system can be found at http://...



etc. etc.



....



One last suggestion: how about making the DDL generation part of the maven mda 
goal?  That right there may have eliminated some confusion.  That way, maven 
mda could be used to "generate all code".  While learning the system, it was 
beneficial to look at the resulting code, without actually building it.  I 
consider the DDLs to be part of that "code" worth studying.
_________________________________________________________
Reply to the post : http://galaxy.andromda.org/forum/viewtopic.php?p=2557#2557
Posting to http://forum.andromda.org/ is preferred over posting to the mailing 
list!


-------------------------------------------------------
This SF.Net email is sponsored by the 'Do More With Dual!' webinar happening
July 14 at 8am PDT/11am EDT. We invite you to explore the latest in dual
core and dual graphics technology at this free one hour event hosted by HP, 
AMD, and NVIDIA.  To register visit http://www.hp.com/go/dualwebinar
_______________________________________________
Andromda-user mailing list
Andromda-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/andromda-user

Reply via email to