Glad you are finally able to build Cayenne.

I guess the idea behind the reorg below is to follow the folder structure in artifact naming. We had to stretch things a bit in the current setup to make the final artifacts more user-friendly... Still it is done correctly from the Maven POV.

group: org.apache
artifact: cayenne

This suggestion is the most damaging, as it would force us to break out of our namespace. And everything else is chained to that. So while I am not completely against a reorg, I'd say we should do it as the last resort measure. Would it be simpler to use the other plugin?

Andrus


On Aug 9, 2008, at 12:59 AM, Aristedes Maniatis wrote:


On 08/08/2008, at 1:20 AM, Andrus Adamchik wrote:

I am not sure why you are seeing the old code, but here is one more hint:

$ rm -rf ~/.m2/repository/org/apache/cayenne/

Yes, that's what ended up fixing the problem. That, plus cleaning out all the target folders one more time.


$ mvn -o -P mac clean install


"-o" flag ensures a local build and prevents all repository communication. You can try adding locally to build-mac.sh as well.

Neat. I'll keep that one in mind.

I think I have a clue about what was causing me grief in the build process: I had installed Q for Eclipse as the maven plugin since it appears to be blessed by Eclipse. But ultimately, it was conflicting with preferences left behind by the now uninstalled m2 Eclipse plugin and Eclipse building was breaking. Even though I was running maven on the command line like I always do, I think Eclipse was messing things up just by running in the background. I've returned to m2 Eclipse, the plugin is better and more functional, and weird building problems are not gone, but less bizarre.


What I'm finding is that it is not always easy to see when a parent framework is going to be rebuilt, or how to build and run (say) the Mac build of the Cayenne modeler without creating an entire assembly and dmg. It has been suggested to me that the cayenne pom setup is a bit unusual. In a more regular setup, the top level pom should be:

group: org.apache
artifact: cayenne

Then the level below should be:

group: org.apache.cayenne
artifact: frameworks

and then

group: org.apache.cayenne.frameworks
artifact: cayenne-jdk1.5-unpublished

Apparently if things are set up this way, it may make it easier for maven to find resources on the file system and perhaps the need to prime the build by mvn install at the top level might go away.

I know ant well, but maven not much at all. Things that I'd find easy (like dependent build processes so all jars are build from current source) in ant I don't know how to achieve in maven. Would the above be an improvement?


Ari Maniatis



-------------------------->
ish
http://www.ish.com.au
Level 1, 30 Wilson Street Newtown 2042 Australia
phone +61 2 9550 5001   fax +61 2 9550 4001
GPG fingerprint CBFB 84B4 738D 4E87 5E5C  5EFA EF6A 7D2E 3E49 102A




Reply via email to