Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "EclipseLink/Development/Testing/Prereq"

(Summary)
(Replaced content with "This page has been obsoleted.")
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
== Summary ==
+
This page has been obsoleted.
The EclipseLink test suites are written using JUnit. They consist of a set of jars and classes that contain various tests and resources. The tests are contained in the eclipselink.*.test projects.  This page is intended to outline the setup and execution steps required to successfully run the JUnit tests. The current minimum version level is JUnit 4.5 (Which ships in Galileo).  There are 2 ways to checkout EclipseLink and for each of these there are 2 ways to run tests.
+
# Checkout using [http://subclipse.tigris.org/update_1.2.x Subclipse] all projects individually into your eclipse workspace
+
## Build classes in eclipse and run/debug there
+
## Build/run classes using Ant 1.7 or greater
+
# or.. Checkout using [http://tortoisesvn.tigris.org TortoiseSVN] the root trunk into a folder outside your workspace ''(IE: c:/view_root)'' and either use ant to build an eclipselink.jar or create proxy projects using link to source from eclipse - Recommended if you would like to build the eclipselink.jar - but you will require some build.properties changes.
+
## Build classes in eclipse and run/debug there
+
## Build/run classes using Ant 1.7 or greater
+
<blockquote style="background: grey; border: 1px solid rgb(153, 153, 153); padding: 1em;"><pre><nowiki>
+
Checkout using right-click menu | checkout, or via commandline :
+
view_root>tortoiseProc /command:checkout /path:"c:\view_root"
+
/url:svn+ssh://username@eclipse/svnroot/rt/org.eclipse.persistence/trunk /closeonend:1
+
</nowiki></pre></blockquote>
+
 
+
<font color="red">Note: '''@eclipse''' is your putty session name</font>
+
 
+
 
+
===Recommended eclipse.ini settings for EclipseLink===
+
====Eclipse 3.5 Galileo 64-Bit Edition====
+
The following eclipse.ini settings are recommended.  The -showLocation, -framework and -Dsun.lang.ClassLoader.allowArraySyntax are new, the XXMaxPermSize attribute is modified.
+
 
+
<pre>
+
-startup
+
plugins/org.eclipse.equinox.launcher_1.0.200.v20090520.jar
+
--launcher.library
+
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.0.200.v20090519
+
-showlocation
+
-showsplash
+
org.eclipse.platform
+
--launcher.XXMaxPermSize
+
512m
+
-framework
+
plugins\org.eclipse.osgi_3.4.0.v20080605-1900.jar
+
-Dsun.lang.ClassLoader.allowArraySyntax=true
+
-Dosgi.requiredJavaVersion=1.5
+
-vmargs
+
-Xms40m
+
-Xmx512m
+
</pre>
+
====Eclipse 3.5 Galileo 32-Bit Edition====
+
The following eclipse.ini settings are recommended.  The -showLocation, -framework and -Dsun.lang.ClassLoader.allowArraySyntax are new, the XXMaxPermSize attribute is modified.
+
 
+
<pre>
+
-showlocation
+
-showsplash
+
org.eclipse.platform
+
--launcher.XXMaxPermSize
+
512M
+
-framework
+
plugins\org.eclipse.osgi_3.4.0.v20080605-1900.jar
+
-vmargs
+
-Dsun.lang.ClassLoader.allowArraySyntax=true
+
-Dosgi.requiredJavaVersion=1.5
+
-Xms40m
+
-Xmx512m
+
</pre>
+
 
+
===Importing EclipseLink Projects Into Eclipse===
+
*Right click in "Package Explorer" or "Navigator" and select Import | Existing projects into workspace
+
*Make sure the check box "copy projects into workspace" is UN-checked or you will end up with 2 copies
+
*Select all or a subset of projects
+
 
+
=== Prerequisites ===
+
 
+
*[http://tortoisesvn.tigris.org TortoiseSVN] and a saved [http://www.chiark.greenend.org.uk/~sgtatham/putty PuTTY] SSH session
+
*''TortoiseSVN - network setting - SSH client'' set as '''&lt;TortoiseSVN_HOME&gt;\bin\TortoisePlink -l &lt;userName&gt; -pw &lt;password_cleartext&gt;'''
+
 
+
[[Image:Explorer right click svn settings menu.JPG|400px]]
+
 
+
*[http://wiki.eclipse.org/EclipseLink/Building/Automate Automated SVN or command-line SVN setup]
+
*You will need to enable some ports or just disable your software firewall.
+
*Eclipse 3.2-3.4|1.5 installed with the subclipse plug-in for in-eclipse checkouts
+
*Referenced core projects '''org.eclipse.persistence.core''' and '''eclipselink.core.lib''' checked out into workspace or view
+
*Required projects for your specific view '''org.eclipse.persistence.sdo|moxy|jpa|dbws''', '''eclipselink.sdo|moxy|jpa|dbws.lib''' and '''eclipselink.sdo|moxy|jpa|dbws.test''' checked out into workspace or view
+
*If using Ant instead of Eclipse to run - edit build.properties either at this project level or better - globally override the following in your user directory on windows: ''C:/Documents and Settings/&lt;user-dir&gt;/build.properties''
+
<blockquote style="border: 1px solid rgb(153, 153, 153); padding: 1em; background: grey none repeat scroll 0% 0%; -moz-background-clip: -moz-initial; -moz-background-origin: -moz-initial; -moz-background-inline-policy: -moz-initial;"><pre>junit.lib=&lt;JUNIT_HOME&gt;/junit.jar
+
</pre></blockquote>
+
*Override any project specific variables in your ''&lt;user-dir&gt;/build.properties'' depending on whether you are running inside an eclipse workspace or outside.
+
*If the directory variable '''extensions.depend.dir''' is not in the standard expected location - 1 level above the trunk at '''&lt;trunk&gt;/../extension.lib.external''' then override it in your own build.properties using the following similar line
+
**<font color="red">extensions.depend.dir=E:/view_libs/extension.lib.external</font>
+
*Add the following javac.debug properties if you are debugging in Eclipse using code built either by Eclipse or Ant.
+
<pre>javac.debug=true
+
javac.debuglevel=lines,vars,source
+
</pre>
+
 
+
===Classpath Variables===
+
Ensure the following (Java | Build Path | Classpath Variables) are set:
+
* ORACLE_JDBC_LIB variable has been mapped to your database's JDBC driver (compile-time for extension project)
+
* JDBC_LIB variable has been mapped to your database's JDBC driver (vendor-agnostic driver)
+
* Some JDBC drivers may require the system library path to be set, or dlls to be on the path
+
* TOOLS_LIB variable has been mapped to your JDK tools.jar
+
* The following jars may be placed into extension.oracle.lib.external
+
** AQAPI_LIB variable has been mapped to your aqapi*.jar
+
** SPATIAL_LIB variable has been mapped to sdoapi.jar
+
** XDB_LIB variable has been mapped to xdb.jar
+
** XML_LIB variable has been mapped to xml.jar
+
** XMLPARSERV2_LIB variable has been mapped to the oracle specific xmlparserv2.jar
+
 
+
The following classpath variables are required for the example.jpa.common project
+
*javax-persistence has been mapped to /jpa/plugins/javax.persistence*.jar (currently _2.0_preview)
+
*eclipselink-jar variable has been mapped to eclipselink.jar at the SVN root
+
 
+
The following classpath variable is required for the util.workbench* projects
+
*ECLIPSELINK_JAR has been mapped to eclipselink.jar at the SVN root
+
 
+
===Eclipse Preparation===
+
'''Note:''' ''Before testing in Eclipse using the Testing Browser - you will need to a full root build of EclipseLink in 'trunk>ant' so that the test jars eclipse*model.jar get created and placed on the root of jpa/eclipselink.jpa.test.  Please refresh your eclipselink.jpa.test project to pick these up before running the Testing Browser eclipse launch target.''
+
 
+
== How To ==
+
* [[EclipseLink/Source|Get EclipseLink Source]]
+
* [[EclipseLink/Build/Antlr| Make changes to ANTLR generated JPA code]]
+
* [[EclipseLink/Development/Testing/foundation| Run the foundation tests]]
+
* [[EclipseLink/Development/Testing/JPA| Run the JPA Junit tests]]
+
* [[EclipseLink/Development/Testing/MOXy| Run the MOXy Junit tests]]
+
* [[EclipseLink/Development/Testing/SDO| Run the SDO Junit tests]]
+
* [[EclipseLink/Building/Automate| Automated/Scripted SVN checkout ]]
+
* [[EclipseLink/Building/Optimize| Optimize SVN ]]
+
 
+
[[Category:EclipseLink|PreReq]]
+

Latest revision as of 13:35, 18 April 2015

This page has been obsoleted.

Back to the top