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/Building"

Line 10: Line 10:
  
 
'''Runtime'''
 
'''Runtime'''
* foundation/core - the core of EclipseLink
+
* foundation/eclipselink.core - the core of EclipseLink
* foundation/extension.oracle - extensions that require Oracle-specific libraries for compilation.  You will not be able to build these extensions until some of the licensing issues have been sorted out.  The compiled classes will be checked in soon so that people without those dependancies can use the compiled classes.
+
* foundation/eclipselink.extension.oracle - extensions that require Oracle-specific libraries for compilation.  You will not be able to build these extensions until some of the licensing issues have been sorted out.  The compiled classes will be checked in soon so that people without those dependancies can use the compiled classes.
* jpa/core - EclipseLink's JPA support
+
* jpa/jpa.core - EclipseLink's JPA support
* foundation/core.lib - this will contain all the libraries the core depends on to build.
+
* foundation/eclipselink.core.lib - this will contain all the libraries the core depends on to build.
  
 
'''Testing'''
 
'''Testing'''
* foundation/core.test - the core testing for EclipseLink
+
* foundation/eclipselink.core.test - the core testing for EclipseLink
* foundation/extension.oracle.test - the testing for EclipseLink's Oracle-specific functionality.  Like the ''extension.oracle'' directory, this will only build after some licensing issues have been sorted out.
+
* foundation/eclipselink.extension.oracle.test - the testing for EclipseLink's Oracle-specific functionality.  Like the ''extension.oracle'' directory, this will only build after some licensing issues have been sorted out.
* jpa/core.test - the JPA tests for EclipseLink
+
* jpa/jpa.core.test - the JPA tests for EclipseLink
  
 
== Projects and Dependancies ==
 
== Projects and Dependancies ==
  
Eclipse Projects are available for foundation/core, foundation/core.lib, foundation/core.test jpa/core and jpa/core.test.  These projects should allow you to use most of the core EclipseLink functionality.
+
Eclipse Projects are available for eclipselink.core, eclipselink.core.lib, eclipselink.core.test jpa.core and jpa.core.test.  These projects should allow you to use most of the core EclipseLink functionality.
  
 
Until our dependancies have been checked in, you should be able to build use the following dependancies to build.
 
Until our dependancies have been checked in, you should be able to build use the following dependancies to build.
  
# foundation/core depends on the following:
+
# eclipselink.core depends on the following:
## foundation/core.lib - The Eclipse Project defined in this folder
+
## eclipselink.core.lib - The Eclipse Project defined in this folder
 
## Eclipse Variable JAVAEE_LIB - this should point to javaee.jar which is included with Sun's JavaEE SDK that can be downloaded from the Sun website.
 
## Eclipse Variable JAVAEE_LIB - this should point to javaee.jar which is included with Sun's JavaEE SDK that can be downloaded from the Sun website.
# jpa/core depends on the following:
+
# jpa.core depends on the following:
## foundation/core - The Eclipse project defined in this folder
+
## eclipselink.core - The Eclipse project defined in this folder
 
## Eclipse Variable ANT_LIB that points to the ANT.  You can point the the ANT Eclipse plug-in.  We are using: ECLIPSE_HOME/plugins/org.apache.ant_1.6.5/lib/ant.jar
 
## Eclipse Variable ANT_LIB that points to the ANT.  You can point the the ANT Eclipse plug-in.  We are using: ECLIPSE_HOME/plugins/org.apache.ant_1.6.5/lib/ant.jar
# foundation/core.test should have all its dependancies already set but provides an ant build that sets up some xml files to run
+
# eclipselink.core.test should have all its dependancies already set but provides an ant build that sets up some xml files to run
# jpa/core.test should have all its dependanciees already set but provides an ant build to build persistence units for testing
+
# jpa.core.test should have all its dependanciees already set but provides an ant build to build persistence units for testing
# foundation/extension.oracle depends on a selection of jars from Oracle products.  In order to build this project you will need to obtain all these jars.  As a result the class files from this project are checked in so they can be used by people that do not have those jars
+
# eclipselink.extension.oracle depends on a selection of jars from Oracle products.  In order to build this project you will need to obtain all these jars.  As a result the class files from this project are checked in so they can be used by people that do not have those jars
 
## Jars:  
 
## Jars:  
 
### aqapi.jar - Oracle Advanced Queue
 
### aqapi.jar - Oracle Advanced Queue
Line 44: Line 44:
 
### xmlparserv2.jar - Oracle XML parser
 
### xmlparserv2.jar - Oracle XML parser
 
## Projects
 
## Projects
### foundation/core depends on the same jars as foundation/extension.oracle and as a result, it has also had class files checked in
+
### eclipselink.core depends on the same jars as foundation/extension.oracle and as a result, it has also had class files checked in
# foundation/extension.oracle.test depends on
+
# eclipselink.extension.oracle.test depends on
## foundation/extension.oracle
+
## eclipselink.extension.oracle
## foundation/core.test
+
## eclipselink.core.test
## jpa/core
+
## jpa.core
## jpa/core.test
+
## jpa.core.test
  
 
== Port TODO List ==
 
== Port TODO List ==

Revision as of 15:57, 10 September 2007


Licensing Issues

We are still sorting through some licensing issues for some of the libraries we depend on and upgrading code to use libraries that are EPL compliant. In the mean time, you may be able to use the following information to build the various projects.

SVN Structure

At the moment, all code can be found in the org.eclipse.persistence/trunk directory on the technology SVN server. The following directories are designed to be compilable sub-components of EclipseLink. They each contain an src directory and potentially a resource directory that the files necessary for building and running.

Runtime

  • foundation/eclipselink.core - the core of EclipseLink
  • foundation/eclipselink.extension.oracle - extensions that require Oracle-specific libraries for compilation. You will not be able to build these extensions until some of the licensing issues have been sorted out. The compiled classes will be checked in soon so that people without those dependancies can use the compiled classes.
  • jpa/jpa.core - EclipseLink's JPA support
  • foundation/eclipselink.core.lib - this will contain all the libraries the core depends on to build.

Testing

  • foundation/eclipselink.core.test - the core testing for EclipseLink
  • foundation/eclipselink.extension.oracle.test - the testing for EclipseLink's Oracle-specific functionality. Like the extension.oracle directory, this will only build after some licensing issues have been sorted out.
  • jpa/jpa.core.test - the JPA tests for EclipseLink

Projects and Dependancies

Eclipse Projects are available for eclipselink.core, eclipselink.core.lib, eclipselink.core.test jpa.core and jpa.core.test. These projects should allow you to use most of the core EclipseLink functionality.

Until our dependancies have been checked in, you should be able to build use the following dependancies to build.

  1. eclipselink.core depends on the following:
    1. eclipselink.core.lib - The Eclipse Project defined in this folder
    2. Eclipse Variable JAVAEE_LIB - this should point to javaee.jar which is included with Sun's JavaEE SDK that can be downloaded from the Sun website.
  2. jpa.core depends on the following:
    1. eclipselink.core - The Eclipse project defined in this folder
    2. Eclipse Variable ANT_LIB that points to the ANT. You can point the the ANT Eclipse plug-in. We are using: ECLIPSE_HOME/plugins/org.apache.ant_1.6.5/lib/ant.jar
  3. eclipselink.core.test should have all its dependancies already set but provides an ant build that sets up some xml files to run
  4. jpa.core.test should have all its dependanciees already set but provides an ant build to build persistence units for testing
  5. eclipselink.extension.oracle depends on a selection of jars from Oracle products. In order to build this project you will need to obtain all these jars. As a result the class files from this project are checked in so they can be used by people that do not have those jars
    1. Jars:
      1. aqapi.jar - Oracle Advanced Queue
      2. sdoapi.jar - Oracle Spatial API
      3. dms.jar - Oracle management
      4. An oracle JDBC driver
      5. xdb.jar - XDB
      6. xml.jar - Oracle XML support
      7. xmlparserv2.jar - Oracle XML parser
    2. Projects
      1. eclipselink.core depends on the same jars as foundation/extension.oracle and as a result, it has also had class files checked in
  6. eclipselink.extension.oracle.test depends on
    1. eclipselink.extension.oracle
    2. eclipselink.core.test
    3. jpa.core
    4. jpa.core.test

Port TODO List

List of task, items, issues, refactorig left to due from the initial port.

  • Check-in dependent libraries and jars.
  • Re-synch with MAIN (this will likely be done on a TX by TX basis by the people that merged those TXs since the last merge.)
  • Antlr upgrade - rename done and tests now pass, CTS run still required
  • Get build scripts working for each component.
  • Get all tests passing. - JPA JUnit tests and legacy LRG model currently pass
  • SVN cleanup, remove some dead directories.
  • Remove deprecated packages and classes.
  • Move JAXB code to MOXy.
  • Move EIS code and tests to EIS
  • Move left-over internal classes to internal packages.
  • Internationalization.
  • Server tests.
  • Performance tests.

How To

Back to the top