OBSOLETE ANTWORT
Diese Antwort für eine sehr alte Version von EBeans ist, fügen Sie es ignorieren.
Original-Content
Das Beispiel auf der Avaje Seite hat einige Fehler.
- Der Tag ist falsch: 'Prozess-ebean-Erweiterung' ist kein Maven-Lebenszyklus, so das Plugin in der Beispielkonfiguration wird nicht Lauf richtig. Die richtige Phase sind "Prozessklassen".
- Der Parameter 'classSource' ist falsch. Wie konfiguriert, würde das Ebean-Plugin @Entity-Klassen in Ihrem Testcode anstatt in Ihrem Produktionscode verbessern. Der korrekte Wert ist '$ {project.build.outputDirectory}'.
- Stellen Sie sicher, dass Sie den Paketbereich für Ihr Projekt aktualisieren. Dies ist "com.mycompany. **" im folgenden Beispiel.
sollte die komplette config:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>process-ebean-enhancement</id>
<phase>process-classes</phase>
<configuration>
<tasks>
<property name="compile_classpath" refid="maven.compile.classpath" />
<echo
message="Ebean enhancing test classes debug level -----------------------------------" />
<echo message="Classpath: ${compile_classpath}" />
<taskdef name="ebeanEnhance" classname="com.avaje.ebean.enhance.ant.AntEnhanceTask"
classpath="${compile_classpath}" />
<ebeanEnhance classSource="${project.build.outputDirectory}"
packages="com.mycompany.**" transformArgs="debug=1" />
</tasks>
<encoding>UTF-8</encoding>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
Dies wird alle der @Entity Klassen in der "src/main/java/com/mycompany" und unten verbessern.
Sie können die Ausführungszeit verbessern, indem Sie restriktiver auf die zu untersuchenden Pakete reagieren.
Möglicherweise müssen Sie diese Konfiguration auch duplizieren, wenn Sie Testklassen erweitern müssen. Verwenden Sie in diesem Fall die Phase 'proces-test-classes' für einen zweiten Block.
funktioniert für mich .. Aber ich musste Ausführungen in die Konfiguration bringen. – joshua
Wenn ich m2e in Eclipse verwende, funktioniert die Kompilation, und es läuft. Aber m2e beschwert sich "Plugin-Ausführung nicht durch Lifecycle-Konfiguration abgedeckt: org.avaje.eebeanorm: avaje-ebeanorm-mavenenhance." Weiß jemand, wie man das repariert? – area5one
@ area5one - lustig, dass Sie gefragt haben, habe ich nur die Antwort mit genau aktualisiert, was Sie brauchen. – JBCP