2

Play 2 で JPA を使用しています。私の Build.scala には、次のものがあります。

object ApplicationBuild extends Build {

  val appName = "weasel"
  val appVersion = "1.0-SNAPSHOT"

  val appDependencies = Seq(
    javaCore,
    javaJdbc,
    javaJpa,
    "org.hibernate" % "hibernate-entitymanager" % "4.1.7.Final"
  )

  val main = play.Project(appName, appVersion, appDependencies).settings(
    ebeanEnabled := false
  )
}

非常に単純なモデル:

import javax.persistence.*;
@Entity
@Table(name = "event")
public class Event {
    @Id
    @Column(name = "EVENT_NO")
    @GeneratedValue(strategy=GenerationType.IDENTITY)
    private Long id;
    @Column(name = "EVENT_OUTPUT_LOG", length = 250)
    private String message;

    public String getMessage() {
        return message;
    }
    public void setMessage(String message) {
        this.message = message;
    }
}

標準の application.conf 構成:

db.default.jndiName=DefaultDS
jpa.default=defaultPersistenceUnit
db.default.logStatements=true
# ebean.default="models.*"
evolutionplugin=disabled

標準の選択SELECT e FROM Event eを行うと、次のクエリが実行されていることがわかります。

select event0_.EVENT_NO as EVENT1_4_,
event0_._ebean_intercept as column2_4_,
event0_.EVENT_OUTPUT_LOG as EVENT3_4_ 
from EVENT event0_

なぜこれを行うのですか?私は、ebeans を使用しないように指示しました。クリーンコンパイルも行いましたが、何も変わりませんでした。

前もって感謝します。

4

3 に答える 3

0

@armk7 の提案に従って Build.sbt から javaEbean 依存関係を削除することで問題は解決しましたが、依存関係を削除した後、Ebean クラスの ClassNotFounException を取得していました。これは、Activator clean を実行しなかったためで、ほとんどのクラス ファイルが ebean ファイルをインポートしていませんでした。同じ問題に直面した場合:- activator clean activator reload activator compile

于 2015-05-07T11:38:04.283 に答える