2015-09-09 2 views
5

Я пытаюсь использовать Play Gradle Plugin для компиляции/упаковки приложения Play 2.3.x, которое использует Ebean.Использование PlayFramework + Ebean с Gradle

Все прекрасно работает во время компиляции и упаковки, но при запуске приложения я получаю хорошо известную ошибку

Entity type class SomeEntity is not an enhanced entity bean. 
Subclassing is not longer supported in Ebean 

Так как же я могу сделать Gradle запустить энхансер во время компиляции?

ответ

5

Вот как я это сделал. Я использую игру 2.4, но должен уметь работать на вас.

Сначала добавьте конфигурацию в вашем build.gradle следующим образом -

configurations { 
    enhance 
} 

Следующая добавить зависимость от ebeanorm агента, как показано ниже:

dependencies { 
    enhance group: 'org.avaje.ebeanorm', name: 'avaje-ebeanorm-agent', version: '4.5.3' 
} 

Убедитесь в наличии необходимых зависимостей воспроизводите build.gradle, как показано ниже:

dependencies { 
    play 'org.avaje:avaje-agentloader:2.1.2' 
    play "org.avaje.ebeanorm:avaje-ebeanorm-agent:4.5.3" 
} 

Наконец, добавьте следующее для улучшения нт после выполнения задачи компиляции выполнил:

model { 
    components { 
     play { 
      binaries.all{binary -> 
       tasks.withType(PlatformScalaCompile) { 
        doLast { 
         ant.taskdef(name: 'ebean', classname: 'com.avaje.ebean.enhance.ant.AntEnhanceTask', classpath: project.configurations.enhance.asPath) 
         ant.ebean(classSource: "${project.buildDir}/playBinary/classes", packages: 'models.package.name', transformArgs: 'debug=1') 

        } 
       } 
      } 
     } 
    } 
0

@koolrich, я пытался решение, и когда она не компилируется я двинулся дальше, только позже, чтобы найти только проблема была dbmodels/* ожидаемый путь в то время как мой путь был другим.

Первоначально казалось, как магия и запутанный жаргон об улучшениях, следующие помог мне понять, что происходит: https://openjpa.apache.org/builds/1.2.3/apache-openjpa/docs/ref_guide_pc_enhance.html По существу, повышение добавляет еще некоторые свойства и методы для работы с упорством.

 Смежные вопросы

  • Нет связанных вопросов^_^