2013-12-11 2 views
2

Приложение My Play 2.2.1 отлично работает на моей домашней машине.java.lang.NoSuchMethodError преследует меня в Cloudbees

После того, как был перенесен в Cloudbees, он был скомпилирован и развернут успешно.

Но во время выполнения, когда я обращаюсь к URL-адресу приложения, я иногда получаю 502 Bad Gateway. Тогда я могу сделать пчел приложение: перезагрузить и проблема может исчезнуть или не может. Затем я делаю пчел app: перезапустите, и он может появиться снова.

Я не вижу абсолютно никакой логики. После 50% перезапуска появляется.

Вот StackTrace из бревен:

Play server process ID is 782 
[[37minfo[0m] play - database [default] connected at jdbc:mysql://ec2-23-21-211-172.compute-1.amazonaws.com:3306/totointer 
Exception in thread "main" java.lang.NoSuchMethodError: com.avaje.ebean.config.AutofetchConfig.isGarbageCollectionOnShutdown()Z 
    at com.avaje.ebeaninternal.server.autofetch.DefaultAutoFetchManager.setOwner(DefaultAutoFetchManager.java:98) 
    at com.avaje.ebeaninternal.server.autofetch.AutoFetchManagerFactory.createAutoFetchManager(AutoFetchManagerFactory.java:29) 
    at com.avaje.ebeaninternal.server.autofetch.AutoFetchManagerFactory.create(AutoFetchManagerFactory.java:23) 
    at com.avaje.ebeaninternal.server.core.InternalConfiguration.createAutoFetchManager(InternalConfiguration.java:154) 
    at com.avaje.ebeaninternal.server.core.DefaultServer.<init>(DefaultServer.java:237) 
    at com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:207) 
    at com.avaje.ebeaninternal.server.core.DefaultServerFactory.createServer(DefaultServerFactory.java:65) 
    at com.avaje.ebean.EbeanServerFactory.create(EbeanServerFactory.java:59) 
    at play.db.ebean.EbeanPlugin.onStart(EbeanPlugin.java:79) 
    at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:88) 
    at play.api.Play$$anonfun$start$1$$anonfun$apply$mcV$sp$1.apply(Play.scala:88) 
    at scala.collection.immutable.List.foreach(List.scala:318) 
    at play.api.Play$$anonfun$start$1.apply$mcV$sp(Play.scala:88) 
    at play.api.Play$$anonfun$start$1.apply(Play.scala:88) 
    at play.api.Play$$anonfun$start$1.apply(Play.scala:88) 
    at play.utils.Threads$.withContextClassLoader(Threads.scala:18) 
    at play.api.Play$.start(Play.scala:87) 
    at play.core.StaticApplication.<init>(ApplicationProvider.scala:52) 
    at play.core.server.NettyServer$.createServer(NettyServer.scala:243) 
    at play.core.server.NettyServer$$anonfun$main$3.apply(NettyServer.scala:279) 
    at play.core.server.NettyServer$$anonfun$main$3.apply(NettyServer.scala:274) 
    at scala.Option.map(Option.scala:145) 
    at play.core.server.NettyServer$.main(NettyServer.scala:274) 
    at play.core.server.NettyServer.main(NettyServer.scala) 

Любые идеи, почему?

ответ

1

Похоже, что конфликтующая версия одного и того же jar в classpath, один из которых имеет класс AutofetchConfig, но не метод isGarbageCollectionOnShutdown. Я замечаю для образца на API doc, что этот метод не существует в 2.6.0, но существует в 3.2.2

Смежные вопросы