У меня есть приложение Play (1.2.4), которое отлично работает на моей 64-битной машине с Windows 7.
У меня было несколько сбоев, когда я работал на бета-версии Java 7.0; эти сбои JavaVM будут появляться при определенных модификациях кода, но без какой-либо "логической" причины (например, добавление класса администратора crud), но я переключился на последнюю версию 7.0_2, и теперь с Windows все в порядке.
НО моя машина (и) для развертывания - это Linux.
Опять же, все работает нормально, но после моего недавнего обновления кода он продолжает давать сбой.
~ play! 1.2.4, http://www.playframework.org
~
~ Ctrl+C to stop
~
Listening for transport dt_socket at address: 8000
05:20:36,845 INFO ~ Starting /home/scrosta/PROJECT
05:20:36,849 INFO ~ Module crud is available (/home/scrosta/play-1.2.4/modules/crud)
05:20:36,849 INFO ~ Module jqueryui is available (/home/scrosta/PROJECTNAME/modules/jqueryui-1.0)
05:20:36,850 INFO ~ Module logisimayml is available (/home/scrosta/PROJECTNAME/modules/logisimayml-1.5)
05:20:36,850 INFO ~ Module secure is available (/home/scrosta/play-1.2.4/modules/secure)
05:20:36,851 INFO ~ Module deadbolt is available (/home/scrosta/PROJECTNAME/modules/deadbolt-1.4.3)
05:20:37,461 WARN ~ You're running Play! in DEV mode
05:20:37,522 INFO ~ Listening for HTTP on port 9000 (Waiting a first request to start) ...
05:21:07,468 INFO ~ Connected to jdbc:h2:mem:play;MODE=MYSQL
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x00007f3c3cb7a438, pid=17664, tid=139896551085824
#
# JRE version: 6.0_22-b22
# Java VM: OpenJDK 64-Bit Server VM (20.0-b11 mixed mode linux-amd64 compressed oops)
# Derivative: IcedTea6 1.10.4
# Distribution: Ubuntu 11.04, package 6b22-1.10.4-0ubuntu1~11.04.1
# Problematic frame:
# V [libjvm.so+0x5ec438] PhaseIdealLoop::build_loop_late_post(Node*)+0x158
#
Весь журнал доступен на сайте pastie
Я тестировал одну машину Gentoo: IcedTea Java 6 и Oracle Java 7, а также другую машину Ubuntu с IcedTea Java 6. Та же проблема. И никаких проблем с Windows.
Я снова запустил зависимости и тоже играл чисто.
Есть идеи, что может спровоцировать это, как решить, как отладить ...?
PS.
play precompile
работает нормально.
РЕДАКТИРОВАТЬ
Как я уже упоминал, я получал почти такую же ошибку в Windows перед переключением на последнюю версию Java 7.0_2.
Поскольку в Linux я получал его с JDK 6 и 7 от двух разных поставщиков, я подумал, что это не может быть связано.
НУ, в конечном итоге удаление одного из моих контроллеров Crud решает проблему - это означает, что приложение запускается снова.
Таким образом, у меня возникает соблазн обвинить модуль CRUD (но надеюсь, что новое обновление Java для Linux решит проблему).
Если кто-нибудь из игры! интересно узнать больше о моих классах crud, прокомментируйте, пожалуйста.
Изменить 2
Удаление некоторых примитивных классов, по-видимому, решило проблему, как бы неоднозначно это ни звучало.
Но теперь мне пришлось перейти к развертыванию JBoss, и ошибка снова вернулась!
На самом деле это приводит к сбою всего JBoss с точно такой же ошибкой ...