I went through the resulting pom by hand to compare the most current versions of all the datanucleus and maven-gae-plugin with what was available from their repos. That got me past the issue in this thread. I'm attaching the resultant pomfile.
The generated code does error in other ways on "perform tests" so I couldn't do an end-to-end test, but the problem isn't roo itself.
Cannot have a primary key of type java.lang.Long and be a child object Child.; nested exception is javax.persistence.PersistenceException: Error in meta-data for field Child.id : Cannot have a primary key of type java.lang.Long and be a child object
So the resulting code evidently needs massaging. Could roo be self-aware to avoid this? If I have time, I'll dig deeper open a more thorough bug report/ feature request. Meanwhile, I had to revert to non-roo to make my deadline, and I already had a steep enough learning curve having gwt issues, being new to app engine, and learning a new domain.