2017-01-23 3 views
0

ich von Java 6 bis 7 Alles zu aktualisieren versuche funktioniert in Java 6. Aber wenn ich Java 7 verwenden, gibt spielen folgende FehlerPlay-Framework: nicht registrieren Klasse in Ebean Server

Cannot register class [models.ActivityMetrics] in Ebean server 
In conf/dev.conf at line 43. 
41 
42 evolutionplugin=disabled 
43 ebean.default = "models.*" <<<<<<<<<<<<<<<<<<<<< 
44 

Es ist Maven-Projekt. Es baut erfolgreich auf, aber gibt den obigen Fehler zur Laufzeit an.

Ich benutze Spiel 2.2.0.

Ich versuchte mit clean, compile, play Sequenz von Befehlen in Antwort auf eine ähnliche Frage in der Vergangenheit empfohlen, aber es hat nicht geholfen.

Ändern sich die Anforderungen für Modelle, wenn Java 7 anstelle von Java 6 verwendet wird? Irgendeine Empfehlung für was soll ich ändern.

Update:

den folgenden Stack-Trace in der Protokolldatei gefunden.

play.api.Configuration$$anon$1: Configuration error[Cannot register class [models.ActivityMetrics] in Ebean server] 
    at play.api.Configuration$.play$api$Configuration$$configError(Configuration.scala:92) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Configuration.reportError(Configuration.scala:570) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.Configuration.reportError(Configuration.java:307) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.db.ebean.EbeanPlugin.onStart(EbeanPlugin.java:71) ~[play-java-ebean_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.collection.immutable.List.foreach(List.scala:318) ~[scala-library-2.10.2.jar:na] 
    at play.api.Play$$anonfun$start$1.apply$mcV$sp(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$$anonfun$start$1.apply(Play.scala:88) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.utils.Threads$.withContextClassLoader(Threads.scala:18) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.api.Play$.start(Play.scala:87) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(ApplicationProvider.scala:139) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1$$anonfun$1.apply(ApplicationProvider.scala:112) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.Option.map(Option.scala:145) ~[scala-library-2.10.2.jar:na] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1.apply(ApplicationProvider.scala:112) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1$$anonfun$apply$1.apply(ApplicationProvider.scala:110) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.util.Success.flatMap(Try.scala:200) ~[scala-library-2.10.2.jar:na] 
    at play.core.ReloadableApplication$$anonfun$get$1.apply(ApplicationProvider.scala:110) ~[play_2.10-2.2.6.jar:2.2.6] 
    at play.core.ReloadableApplication$$anonfun$get$1.apply(ApplicationProvider.scala:102) ~[play_2.10-2.2.6.jar:2.2.6] 
    at scala.concurrent.impl.Future$PromiseCompletingRunnable.liftedTree1$1(Future.scala:24) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.impl.Future$PromiseCompletingRunnable.run(Future.scala:24) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinTask$AdaptedRunnableAction.exec(ForkJoinTask.java:1361) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979) ~[scala-library-2.10.2.jar:na] 
    at scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107) ~[scala-library-2.10.2.jar:na] 
Caused by: java.lang.VerifyError: Stack map does not match the one at exception handler 188 
Exception Details: 
    Location: 
    models/ActivityMetrics.delete()V @188: astore_2 
    Reason: 
    Type 'models/Activity' (current frame, locals[5]) is not assignable to 'java/lang/String' (stack map, locals[5]) 
    Current Frame: 
    bci: @117 
    flags: { } 
    locals: { 'models/ActivityMetrics', 'java/lang/String', 'java/util/ArrayList', top, 'models/ActivityMetrics', 'models/Activity' } 
    stack: { 'java/lang/Exception' } 
    Stackmap Frame: 
    bci: @188 
    flags: { } 
    locals: { 'models/ActivityMetrics', 'java/lang/String', top, top, 'java/lang/Object', 'java/lang/String' } 
    stack: { 'java/lang/Exception' } 
    Bytecode: 
    0000000: bb00 3459 b700 3513 0107 b600 372a 3a04 
    0000010: 013a 0519 04b6 03c4 3a05 1905 3a04 013a 
    0000020: 0519 04b6 03de 3a05 1905 b600 3713 0108 
    0000030: b600 37b6 0039 4cb2 0015 2bb6 0017 b200 
    0000040: 152a 3a04 013a 0519 04b6 03c4 3a05 1905 
    0000050: 3a04 013a 0519 04b6 03e0 3a05 1905 b600 
    0000060: 17bb 002f 59b7 0030 4d2c 2a3a 0401 3a05 
    0000070: 1904 b603 c43a 0519 053a 0401 3a05 1904 
    0000080: b603 e03a 0519 05b9 0091 0200 57b8 000a 
    0000090: 4e2a 57b2 000e 2d3a 0401 3a05 1904 b603 
    00000a0: bf3a 0519 053a 0401 3a05 1904 b603 c23a 
    00000b0: 0519 052b 2cb6 00fb 57a7 0016 4db2 0015 
    00000c0: 1301 09b6 0017 bb01 0a59 2cb7 010b bfb1 
    00000d0: 
    Exception Handler Table: 
    bci [97, 185] => handler: 188 
    Stackmap Table: 
    full_frame(@188,{Object[#373],Object[#410],Top,Top,Object[#376],Object[#410]},{Object[#414]}) 
    full_frame(@207,{Object[#373],Object[#410],Object[#408],Object[#407],Object[#536],Object[#410]},{}) 

    at java.lang.Class.forName0(Native Method) ~[na:1.7.0_79] 
    at java.lang.Class.forName(Class.java:274) ~[na:1.7.0_79] 
    at play.db.ebean.EbeanPlugin.onStart(EbeanPlugin.java:69) ~[play-java-ebean_2.10-2.2.6.jar:2.2.6] 
    ... 23 common frames omitted 

Antwort

0

Fehler wurde nach der Verwendung von Getter anstatt auf die Felder direkt gegangen Below Änderungen gearbeitet.

Thread https://groups.google.com/forum/#!topic/play-framework/eWFwZ75T6wk geholfen, die Antwort zu finden.

 public void delete() throws Exception { 
-  String query = "DELETE FROM " + this.activity.merchant + "_activity_metrics WHERE uuid = ?"; 
+  String merchant = this.getActivity().getMerchant(); 
+  String query = "DELETE FROM " + merchant + "_activity_metrics WHERE uuid = ?"; 
     System.out.println(query); 
-  System.out.println(this.activity.uuid); 
+  System.out.println(this.getActivity().getUuid()); 
Verwandte Themen