玩!框架 - Evolution 不会在 MySQL 服务器上自动启动

Play! Framework - Evolution don't start automatically on Server with MySQL

在服务器上启动我的应用程序后,它连接到我的 MySQL 数据库。

2015-04-19 17:00:38,636 - [INFO] - from play in main 
database [default] connected at jdbc:mysql://localhost/crowdfundme

但是每次涉及数据库时它都会崩溃。

Cannot invoke the action, eventually got an error:   javax.persistence.PersistenceException: Query threw SQLException:Table  'crowdfundme.user' doesn't exist 
Bind values:[] 
Query was:
select t0.id c0, t0.name c1, t0.age c2, t0.money c3, t0.nationality c4, t0.has_funded c5, t0.has_answered_questions c6, t0.chosen_bike c7,   t0.funding_amount c8, t0.money_before_funding c9 from user t0 

evolution 脚本没有被应用,但它不能被应用,因为我第一次加载页面时不可能这样做。

我尝试使用常规技巧自动应用进化脚本:

evolutionplugin=enabled
applyEvolutions.default=true
applyDownEvolutions.default=true

但现在我不能再多想了。也许有一些我自己看不到的完全简单的东西?感谢您的每一个回答!

是第一次进化?也许有一些向下进化?

所以我自己发现了。你必须让游戏产生进化方案。在您的 application.conf db.default.url="jdbc:h2:mem:play;MODE=MYSQL" 中使用以创建 MySQL 方言的演变。 在我的例子中,我不得不删除 1.sql 中的 "sequences" 以便它可以与我服务器上的 MySQL 数据库一起使用,但也许你可以找到替代品。