Files
spring-integration/README.md
2011-08-16 11:29:31 -04:00

72 lines
2.5 KiB
Markdown

Spring Integration
==================
# Checking out and Building
To check out the project and build from source, do the following:
git clone --recursive git://github.com/SpringSource/spring-integration.git
cd spring-integration
./gradlew build
> Note: the **<code>--recursive</code>** switch above is important, as spring-integration uses
> *git submodules*, which must themselves be cloned and initialized. If **<code>--recursive</code>**
> is omitted, the checkout becomes a multi-step process.
If you encounter heap space errors during the build, increase the heap size for Gradle:
GRADLE_OPTS="-Xmx1024m"
# Using Eclipse
To generate Eclipse metadata (.classpath and .project files), do the following:
./gradlew eclipse
Once complete, you may then import the projects into Eclipse as usual:
*File -> Import -> Existing projects into workspace*
Browse to the *'spring-integration'* root directory. All projects should import
free of errors.
# Using IntelliJ IDEA
To generate IDEA metadata (.iml and .ipr files), do the following:
./gradlew idea
# Generating JavaDoc
To build the JavaDoc, do the following from within the root directory:
./gradlew :docs:api
The result will be available in **'docs/build/api'**.
# OSGI Notes
1. Dependency on Third Party Bundles
Some adapters depend on third party libraries (bundles).
Spring hosts the Enterprise Bundle Repository (EBR) at
https://ebr.springsource.com/repository/app/, where you can download
many third-party JARs as valid OSGi bundles.
If a particular bundle is not available in Spring's EBR, there are tools
that can convert a regular JAR to a bundle JAR. One of them is Bundlor
http://www.springsource.org/bundlor which can auto-generate an OSGi
MANIFEST.MF as part of standard project lifecycle or simply convert a
non-bundle JAR to a bundle JAR.
2. Boot delegation
Some adapters depend on extension packages that are available to the boot
class loader. As a case in point, the Feed Adapter depends on
com.sun.syndication.feed. Since by default OSGi only loads java.* from the
boot class loader, other packages that must be loaded from the boot class
loader can therefore be specified with the
'org.osgi.framework.bootdelegation' System property.
For example:
org.osgi.framework.bootdelegation=com.sun.*,org.w3c.*. . . .
# Resources
For more information, please visit the Spring Integration website at: [http://www.springsource.org/spring-integration](http://www.springsource.org/spring-integration)