Author: dwoods
Date: Tue Feb 23 21:55:49 2010
New Revision: 915539

URL: http://svn.apache.org/viewvc?rev=915539&view=rev
Log:
OPENJPA-1520 Allow using JDK 1.5 to compile/run the junits by using 
-Ptest-java5,test-derby -Djava5.home=<1.5 JDK home>, so we can verify that the 
1.6 built artifacts will still work for 1.5 users.

Modified:
    openjpa/trunk/pom.xml

Modified: openjpa/trunk/pom.xml
URL: 
http://svn.apache.org/viewvc/openjpa/trunk/pom.xml?rev=915539&r1=915538&r2=915539&view=diff
==============================================================================
--- openjpa/trunk/pom.xml (original)
+++ openjpa/trunk/pom.xml Tue Feb 23 21:55:49 2010
@@ -153,106 +153,6 @@
     </modules>
 
     <profiles>
-        <!-- =============== -->
-        <!--  Test Profiles  -->
-        <!-- =============== -->
-        <!-- Default profile for testing with an embedded Apache Derby DB -->
-        <profile>
-            <!--
-                Optionally, you can override the following properties:
-                    -Dderby.version=10.2.2.0
-            -->
-            <id>test-derby</id>
-            <activation>
-                <activeByDefault>true</activeByDefault>
-            <property>
-                <name>test-derby</name>
-            </property>
-            </activation>
-            <dependencies>
-                <dependency>
-                    <groupId>org.apache.derby</groupId>
-                    <artifactId>derby</artifactId>
-                    <version>${derby.version}</version>
-                    <scope>test</scope>
-                </dependency>
-            </dependencies>
-            <properties>
-                
<connection.driver.name>org.apache.derby.jdbc.EmbeddedDriver</connection.driver.name>
-                
<connection.url>jdbc:derby:target/database/openjpa-derby-database;create=true</connection.url>
-                <connection.username />
-                <connection.password />
-            </properties>
-        </profile>
-        <!-- Profile for testing with an In-Memory Apache Derby DB -->
-        <profile>
-            <!--
-                Optionally, you can override the following properties:
-                    -Dderby.version=10.5.3.0_1
-            -->
-            <id>test-derbymem</id>
-            <activation>
-                <property>
-                    <name>test-derbymem</name>
-                </property>
-            </activation>
-            <dependencies>
-                <dependency>
-                    <groupId>org.apache.derby</groupId>
-                    <artifactId>derby</artifactId>
-                    <version>${derby.version}</version>
-                    <scope>test</scope>
-                </dependency>
-            </dependencies>
-            <properties>
-                
<connection.driver.name>org.apache.derby.jdbc.EmbeddedDriver</connection.driver.name>
-                
<connection.url>jdbc:derby:memory:openjpa-derby-inmem-database;create=true</connection.url>
-                <connection.username />
-                <connection.password />
-            </properties>
-        </profile>
-        <!-- Profile for testing with Apache Derby DB network server -->
-        <profile>
-            <!--
-                Example Derby Network Server profile.
-                You must manually start a Derby network server instance and
-                also set the following properties:
-                    
-Dopenjpa.derbynet.url=jdbc:derby://<HOST>:<PORT>/<DBNAME>;\
-                        create=true
-
-                Optionally, you can override the following properties:
-                    
-Dopenjpa.derbynet.driver=org.apache.derby.jdbc.ClientXADataSource
-                    -Dopenjpa.derbynet.username=
-                    -Dopenjpa.derbynet.password=
-                    -Dderby.version=10.2.2.0
-            -->
-            <id>test-derbynet</id>
-            <activation>
-                <property>
-                    <name>test-derbynet</name>
-                </property>
-            </activation>
-            <dependencies>
-                <dependency>
-                    <groupId>org.apache.derby</groupId>
-                    <artifactId>derbyclient</artifactId>
-                    <version>${derby.version}</version>
-                    <scope>test</scope>
-                </dependency>
-            </dependencies>
-            <properties>
-                
<openjpa.derbynet.url>jdbc:derby://localhost:1527/openjpa20;create=true;traceDirectory=target;traceFile=derby.log</openjpa.derbynet.url>
-                
<openjpa.derbynet.driver>org.apache.derby.jdbc.ClientDriver</openjpa.derbynet.driver>
-                <!-- Note: commons-dbcp requires dummy values for uid/pwd -->
-                <openjpa.derbynet.username>uid</openjpa.derbynet.username>
-                <openjpa.derbynet.password>pwd</openjpa.derbynet.password>
-                
<connection.driver.name>${openjpa.derbynet.driver}</connection.driver.name>
-                <connection.url>${openjpa.derbynet.url}</connection.url>
-                
<connection.username>${openjpa.derbynet.username}</connection.username>
-                
<connection.password>${openjpa.derbynet.password}</connection.password>
-            </properties>
-        </profile>
-
 
         <!-- ================ -->
         <!--  Build Profiles  -->
@@ -581,6 +481,19 @@
             </build>
         </profile>
 
+        <!-- =============== -->
+        <!--  Test Profiles  -->
+        <!-- =============== -->
+        <profile>
+            <id>debug</id>
+            <activation>
+                <activeByDefault>false</activeByDefault>
+            </activation>
+            <properties>
+                <test.jvm.arguments>-Xmx${test.jvm.maxheapsize} 
-XX:MaxPermSize=${test.jvm.maxpermsize} 
-agentlib:jdwp=transport=dt_socket,server=y,address=8000</test.jvm.arguments>
+            </properties>
+        </profile>
+
         <profile>
             <id>enable-security</id>
             <activation>
@@ -619,16 +532,165 @@
             </build>
         </profile>
 
+        <!-- Use this profile to build/execute the junits w/ a 1.5 JDK
+             Note: You must also specific a DB test profile, like test-derby
+             and provide -Djava5.home=<path to 1.5 JDK, like /opt/jdk1.5.0_22>
+        -->
         <profile>
-            <id>debug</id>
+            <id>test-java5</id>
             <activation>
                 <activeByDefault>false</activeByDefault>
             </activation>
             <properties>
-                <test.jvm.arguments>-Xmx${test.jvm.maxheapsize} 
-XX:MaxPermSize=${test.jvm.maxpermsize} 
-agentlib:jdwp=transport=dt_socket,server=y,address=8000</test.jvm.arguments>
+                <java5.home>"java5.home - Must be user supplied"</java5.home>
+            </properties>
+            <build>
+                <pluginManagement>
+                    <plugins>
+                <plugin>
+                    <groupId>org.apache.maven.plugins</groupId>
+                    <artifactId>maven-compiler-plugin</artifactId>
+                    <configuration>
+                        <source>1.5</source>
+                        <target>1.5</target>
+                        <excludes>
+                            <exclude>none</exclude>
+                        </excludes>
+                        <testExcludes>
+                            <exclude>**</exclude>
+                        </testExcludes>
+                    </configuration>
+                    <executions>
+                        <execution>
+                            <id>compile-java5</id>
+                            <configuration>
+                                <fork>true</fork>
+                                
<executable>${java5.home}/bin/javac</executable>
+                                <compilerVersion>1.5</compilerVersion>
+                                <maxmem>${test.jvm.maxheapsize}</maxmem>
+                                <excludes>
+                                    <exclude>**</exclude>
+                                </excludes>
+                                <testExcludes>
+                                    <exclude>none</exclude>
+                                </testExcludes>
+                            </configuration>
+                            <goals>
+                                <goal>testCompile</goal>
+                            </goals>
+                        </execution>
+                    </executions>
+                        </plugin>
+                        <plugin>
+                            <groupId>org.apache.maven.plugins</groupId>
+                            <artifactId>maven-surefire-plugin</artifactId>
+                            <configuration>
+                                <jvm>${java5.home}/bin/java</jvm>
+                            </configuration>
+                        </plugin>
+                    </plugins>
+                </pluginManagement>
+            </build>
+        </profile>
+
+        <!-- Default profile for testing with an embedded Apache Derby DB -->
+        <profile>
+            <!--
+                Optionally, you can override the following properties:
+                    -Dderby.version=10.2.2.0
+            -->
+            <id>test-derby</id>
+            <activation>
+                <activeByDefault>true</activeByDefault>
+            <property>
+                <name>test-derby</name>
+            </property>
+            </activation>
+            <dependencies>
+                <dependency>
+                    <groupId>org.apache.derby</groupId>
+                    <artifactId>derby</artifactId>
+                    <version>${derby.version}</version>
+                    <scope>test</scope>
+                </dependency>
+            </dependencies>
+            <properties>
+                
<connection.driver.name>org.apache.derby.jdbc.EmbeddedDriver</connection.driver.name>
+                
<connection.url>jdbc:derby:target/database/openjpa-derby-database;create=true</connection.url>
+                <connection.username />
+                <connection.password />
             </properties>
         </profile>
 
+        <!-- Profile for testing with an In-Memory Apache Derby DB -->
+        <profile>
+            <!--
+                Optionally, you can override the following properties:
+                    -Dderby.version=10.5.3.0_1
+            -->
+            <id>test-derbymem</id>
+            <activation>
+                <property>
+                    <name>test-derbymem</name>
+                </property>
+            </activation>
+            <dependencies>
+                <dependency>
+                    <groupId>org.apache.derby</groupId>
+                    <artifactId>derby</artifactId>
+                    <version>${derby.version}</version>
+                    <scope>test</scope>
+                </dependency>
+            </dependencies>
+            <properties>
+                
<connection.driver.name>org.apache.derby.jdbc.EmbeddedDriver</connection.driver.name>
+                
<connection.url>jdbc:derby:memory:openjpa-derby-inmem-database;create=true</connection.url>
+                <connection.username />
+                <connection.password />
+            </properties>
+        </profile>
+
+        <!-- Profile for testing with Apache Derby DB network server -->
+        <profile>
+            <!--
+                Example Derby Network Server profile.
+                You must manually start a Derby network server instance and
+                also set the following properties:
+                    
-Dopenjpa.derbynet.url=jdbc:derby://<HOST>:<PORT>/<DBNAME>;\
+                        create=true
+
+                Optionally, you can override the following properties:
+                    
-Dopenjpa.derbynet.driver=org.apache.derby.jdbc.ClientXADataSource
+                    -Dopenjpa.derbynet.username=
+                    -Dopenjpa.derbynet.password=
+                    -Dderby.version=10.2.2.0
+            -->
+            <id>test-derbynet</id>
+            <activation>
+                <property>
+                    <name>test-derbynet</name>
+                </property>
+            </activation>
+            <dependencies>
+                <dependency>
+                    <groupId>org.apache.derby</groupId>
+                    <artifactId>derbyclient</artifactId>
+                    <version>${derby.version}</version>
+                    <scope>test</scope>
+                </dependency>
+            </dependencies>
+            <properties>
+                
<openjpa.derbynet.url>jdbc:derby://localhost:1527/openjpa20;create=true;traceDirectory=target;traceFile=derby.log</openjpa.derbynet.url>
+                
<openjpa.derbynet.driver>org.apache.derby.jdbc.ClientDriver</openjpa.derbynet.driver>
+                <!-- Note: commons-dbcp requires dummy values for uid/pwd -->
+                <openjpa.derbynet.username>uid</openjpa.derbynet.username>
+                <openjpa.derbynet.password>pwd</openjpa.derbynet.password>
+                
<connection.driver.name>${openjpa.derbynet.driver}</connection.driver.name>
+                <connection.url>${openjpa.derbynet.url}</connection.url>
+                
<connection.username>${openjpa.derbynet.username}</connection.username>
+                
<connection.password>${openjpa.derbynet.password}</connection.password>
+            </properties>
+        </profile>
     </profiles>
 
     <!-- default versions for dependencies that child modules may include -->


Reply via email to