2010-07-16 18 views
1

J'ai essayé de créer un seul projet qui peut s'exécuter à la fois sur sql et gae (où le fichier 'datanucleus.properties' doit être changé) sous une seule structure de dossiers maven. J'ai d'abord essayé d'obtenir l'exemple de Salutation sur le site Web de GAE en utilisant mysql (cela fonctionne maintenant). Puis, en m'inspirant du tutoriel de Beardedgeeks, j'ai essayé d'ajouter les dépendances nécessaires pour exécuter les choses sur gae. En tapant mvn gae: run, cependant, j'obtiens l'erreur suivante, affichée au http://pastebin.com/fJ7c7xfx. J'ai passé beaucoup de temps à chercher des réponses sur google, etc., mais je n'ai pas été en mesure d'avancer mon cas.Google App Engine en utilisant maven

Je serais heureux d'obtenir des pointeurs. Vive, manojo

Répondre

1

Cette question est étiquetée [JDO] mais la trace suivante:

Caused by: java.lang.ClassNotFoundException: javax.persistence.InheritanceType 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307) 
    at com.google.appengine.tools.development.IsolatedAppClassLoader.loadClass(IsolatedAppClassLoader.java:151) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248) 
    ... 77 more 

suggère que vous manquez le pot de l'API JPA (fourni par org.apache.geronimo.specs:geronimo-jpa_1.0_spec:1.1.1).

<dependency> 
    <groupId>org.apache.geronimo.specs</groupId> 
    <artifactId>geronimo-jpa_3.0_spec</artifactId> 
    <version>1.1.1</version> 
</dependency> 

Puisque vous ne l'utilisez JPA, vous ne devriez pas avoir à faire cela, mais il semble que l'API JPA est référencé en quelque sorte par le plug-in AppEngine de DataNucleus comme expliqué par @Datanucleus.

+0

Salut, merci pour la réponse. Je n'ai pu publier qu'un seul lien, et en effet, je n'utilise pas jpa. Voici mon pom.xml: http://pastebin.com/2Y7gC2b0. J'espère que cela aide. S'il vous plaît laissez-moi savoir si quelque chose de plus est nécessaire. Cheers, Manojo – manojo

+0

@manojo: Je ne sais pas pourquoi vous vous plaignez de JPA et que vous ne pouvez pas enquêter ou essayer de reproduire maintenant. –

0

Les personnes de Google ont mis une référence dans cette classe JPA de manière imprudente dans leur plugin et donc il faut que jpa.jar (le Geronimo fera l'affaire) dans votre CLASSPATH. Un problème a été soulevé sur eux il ya longtemps pour le réparer, mais malheureusement, ils ne maintiennent pas activement leur plugin.

+0

Après avoir inclus les jpa jpa, ça fonctionne vraiment, merci beaucoup :). – manojo

+0

Salut, j'ai aussi ce problème. J'ai un projet multi-module Maven mis en place. Tout se construit bien, mais quand j'essaye de conserver la première entité avec JDO, j'obtiens cette exception. Mes fichiers POM sont ici: http://code.google.com/p/etfamer/source/browse/#svn%2Ftrunk%2Fedu_centar_new – Zec