You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2013/06/28 09:22:23 UTC
svn commit: r1497666 -
/isis/site/trunk/content/components/objectstores/jdo/datanucleus-and-maven.md
Author: danhaywood
Date: Fri Jun 28 07:22:23 2013
New Revision: 1497666
URL: http://svn.apache.org/r1497666
Log:
updating info on handling datanucleus and maven
Modified:
isis/site/trunk/content/components/objectstores/jdo/datanucleus-and-maven.md
Modified: isis/site/trunk/content/components/objectstores/jdo/datanucleus-and-maven.md
URL: http://svn.apache.org/viewvc/isis/site/trunk/content/components/objectstores/jdo/datanucleus-and-maven.md?rev=1497666&r1=1497665&r2=1497666&view=diff
==============================================================================
--- isis/site/trunk/content/components/objectstores/jdo/datanucleus-and-maven.md (original)
+++ isis/site/trunk/content/components/objectstores/jdo/datanucleus-and-maven.md Fri Jun 28 07:22:23 2013
@@ -58,6 +58,68 @@ istered, and you are trying to register
ch.
</pre>
+
+
+
+### Preferred solution
+
+> This solution fixes is now version of DataNucleus to be the version referenced by the JDO ObjectStore.
+>
+> This is the solution used from the Isis Core 1.3.0-SNAPSHOT onwards.
+
+In the root project's `pom.xml`, specify the property:
+
+ <properties>
+ <datanucleus-core.version>3.2.4</datanucleus-core.version>
+ ...
+ </properties>
+
+where the version should be the same as the one referenced by the JDO Objectstore.
+
+Then, in the `dom` project's `pom.xml`, update the DataNucleus enhancer plugin to force it to use a specific version of the DataNucleus core:
+
+
+ <plugins>
+ <plugin>
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-maven-plugin</artifactId>
+ <version>3.2.0-release</version>
+ <dependencies>
+ <dependency>
+ <!-- Force the enhancer to use the same version
+ of core that's already on the classpath -->
+ <groupId>org.datanucleus</groupId>
+ <artifactId>datanucleus-core</artifactId>
+ <version>${datanucleus-core.version}</version>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <fork>false</fork>
+ <log4jConfiguration>${basedir}/log4j.properties</log4jConfiguration>
+ <verbose>true</verbose>
+ <props>${basedir}/datanucleus.properties</props>
+ </configuration>
+ <executions>
+ <execution>
+ <phase>compile</phase>
+ <goals>
+ <goal>enhance</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ ...
+ </plugins>
+
+
+
+### Original solution
+
+> This solution attempts to use the latest-n-greatest version of DataNucleus, and was the approach used in Isis Core 1.2.0 and earlier. However, it has been found to be flawed if a new version of the DataNucleus enhancer was released that had an incompatibility with the version of DN referenced by the JDO ObjectStore.
+>
+> Use the preferred solution, above, instead.
+
+
The fix is to use a Maven profile. The following is correct as of the JDO ObjectStore v1.1.0:
<pre>