首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >玩2.4Ebean NullPointerException

玩2.4Ebean NullPointerException
EN

Stack Overflow用户
提问于 2015-10-14 00:40:33
回答 1查看 800关注 0票数 1

多年来我一直在为这出戏而奋斗!框架,随着方向的不断移动和主要API的变化,它是一个恒定的运动目标。

最近,我遇到了一项不幸的任务:将与Java 8不兼容的Play 2.1或2.2项目更新为与Java 8兼容的Play 2.4。

编辑:Heroku没有放弃对Java7的支持。

现在,我正在处理Ebean类中的一个NullPointerException,我不知道为什么。我有以下代码:

代码语言:javascript
复制
@Entity
public class User extends Model {

    public static Model.Finder<Long, User> find() {
        return new Model.Finder<Long, User>(User.class);
    } 

    public static boolean emailExists(String email) {
        if(User.find().where().eq("email",email).findRowCount() > 0) {
            return true;
        } else {
            return false;
        }
    }
}

运行以下命令时,我会得到一个NullPointerException:

代码语言:javascript
复制
User.find().where().eq("email",email).findRowCount() > 0

堆栈跟踪是:

代码语言:javascript
复制
java.lang.NullPointerException
at com.avaje.ebean.Model$Find.query(Model.java:548)
at com.avaje.ebean.Model$Find.where(Model.java:742)
at models.User.emailExists(User.java:9)
at controllers.UserController.doLogin(UserController.java:208)

代码在开发过程中运行良好,但是当推到Heroku时会崩溃,为什么会这样呢?

如您所见,空指针发生在com.avaje.ebean.Model$Find.query()方法中。我已经检查了Ebean中的代码,试图用现在的线索来确定导致这种情况的原因。我还将Ebean调试打开到了9的最大级别,ebean似乎适当地标识了所有的实体。

我用的是:

addSbtPlugin("com.typesafe.sbt“%”sbt ebean“% "1.0.0")

但升级为:

addSbtPlugin("com.typesafe.sbt“%”sbt ebean“% "2.0.0")

这无助于解决问题..。

任何关于这方面的指导都会很有帮助!我已经玩完了!目前框架将不再用于任何项目.

EN

回答 1

Stack Overflow用户

发布于 2015-10-14 01:32:03

Heroku不使用Java 7删除服务器。我假设您是指雪松-14迁徙,它确实将默认的 JDK更改为8。但是仍然可以使用system.properties 7,方法是向应用程序的根目录添加一个system.properties文件,其中包含以下内容:

代码语言:javascript
复制
java.runtime.version=1.7

将该文件添加到Git中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33114833

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档