2015-12-10 5 views
0

В настоящее время я работаю над Play! проект, версия 2.4.x для Java.Играйте! Framework 2.4.x - Формирование создания конфигураций ebean

Я создал Entity в папке models, названной пользователем. Это код User.php:

package models; 

import javax.persistence.Entity; 
import javax.persistence.Id; 

import com.avaje.ebean.Model; 


@Entity 
public class User extends Model{ 

    @Id 
    public String Id; 
    protected String name; 
    protected String password; 
    protected String email; 

    /* -- getters and setters --*/ 
} 

Это содержание application.conf:

db.default.driver=org.h2.Driver 
db.default.url="jdbc:h2:mem:play" 
db.default.username=sa 
db.default.password="" 
ebeans.default="models.*" 

Как вы можете видеть, это довольно стандартная конфигурация, я только разложил строки, связанные с параметрами db, я использую ebeans как ORM.

Проблема в том, что Play не генерирует файлы эволюции. Для других проектов, над которыми я работал, я видел это, когда добавляю Entity или меняю поле в сущности, которую я создал, инфраструктура понимает, что я сделал редактирование, так что он обновляет базу данных и обновляет конфигурации ,

В моем проекте папка conf/evolutions/default/x.sql не существует, поэтому у меня нет эволюций. Из-за этого я получаю исключение нулевого указателя каждый раз, когда пытаюсь получить доступ к таблице базы данных.

Если вам нужно это build.sbt файл:

name := """WebInterface""" 

version := "1.0-SNAPSHOT" 

lazy val root = (project in file(".")).enablePlugins(PlayJava, PlayEbean) 

scalaVersion := "2.11.6" 

libraryDependencies ++= Seq(
    javaJdbc, 
    cache, 
    javaWs, 
    evolutions 
) 

// Play provides two styles of routers, one expects its actions to be injected, the 
// other, legacy style, accesses its actions statically. 
routesGenerator := InjectedRoutesGenerator 

Может кто-нибудь мне помочь? Я хотел бы знать, существует ли команда оболочки для принудительного генерации файлов sql или если мне нужно отредактировать некоторые файлы конфигурации для автоматического создания этого файла.

Благодарим за помощь.

ответ

1

В вашем build.sbt вы включили плагин PlayEbean. Это верно. Но вы также должны добавить его в свой project/plugins.sbt.

Так проект/plugins.sbt должен содержать следующую строку: addSbtPlugin("com.typesafe.sbt" % "sbt-play-ebean" % "1.0.0")