|
|
(35 intermediate revisions by the same user not shown) |
Line 1: |
Line 1: |
− | __TOC__
| + | See [https://git.eclipse.org/c/recommenders/org.eclipse.recommenders.git/about/ here] for a description how to build Code Recommenders from source. |
− | | + | |
− | Building Eclipse Code Recommenders from sources should be pretty easy. If some of the steps below fail - let us know.
| + | |
− | | + | |
− | = Build Prerequisites =
| + | |
− | On your development machine, you should have installed/use:
| + | |
− | | + | |
− | * '''Eclipse 3.7+''':
| + | |
− | ** Plug-in Developer package (you need the ''plugin development environment'')
| + | |
− | ** Xtend 2.2+ Plug-ins (only needed when writing tests with Xtend)
| + | |
− | * '''command line:'''
| + | |
− | ** Maven 3.0+
| + | |
− | | + | |
− | = Building with Maven Tycho =
| + | |
− | <pre>$ git clone http://git.eclipse.org/gitroot/recommenders/org.eclipse.recommenders.git
| + | |
− | $ cd org.eclipse.recommenders
| + | |
− | $ mvn clean install
| + | |
− | </pre>
| + | |
− | ''mvn clean install'' automatically executes the maven builds for Eclipse 4.2 platform. If you want to build Code Recommenders for 3.7 just use
| + | |
− | <pre>$ mvn clean install -P e3x
| + | |
− | </pre>
| + | |
− | | + | |
− | A list of defined maven profiles you can specify with ''-P'':
| + | |
− | | + | |
− | * '''e3x''': Builds Code Recommender with Eclipse 3.x target platform. A consumable P2 update site is generated under dist/org.eclipse.recommenders.head.e37/target/repository/
| + | |
− | * '''e42''': Builds Code Recommender with Eclipse 4.2 target platform. A consumable P2 update site is generated under dist/org.eclipse.recommenders.head.e37/target/repository/
| + | |
− | * '''server''' Builds Code Recommender server product. A product zip file is stored under /dist/org.eclipse.recommenders.product.server/target/products/
| + | |
− | * '''build-server''': This profile is considered to be run on the hudson.eclipse.org only. Running it locally won't work.
| + | |
− | | + | |
− | Sidenote: It's possible to specify more than one profile at the same time using a comma separated list as in "-P e3x,server". Note, that there is no whitespace between the profiles. Note further that e3x and e42 are mutually exclusive since they specify the build environment using target definition files.
| + | |
− | | + | |
− | = Building from Eclipse Workspace =
| + | |
− | | + | |
− | Configuring Eclipse Code Recommenders Workspace for Eclipse is slightly more complicated:
| + | |
− | | + | |
− | On command line do:
| + | |
− | <pre>$ git clone http://git.eclipse.org/gitroot/recommenders/org.eclipse.recommenders.git
| + | |
− | $ cd org.eclipse.recommenders
| + | |
− | $ mvn clean install
| + | |
− | </pre>
| + | |
− | This is currently required ''once'' to download the models archive for override completion.
| + | |
− | | + | |
− | Then,
| + | |
− | | + | |
− | #Import all projects into your Eclipse workspace.
| + | |
− | # Set workspace encoding to UTF-8.
| + | |
− | #Set the workspace's target platform.
| + | |
− | ##Go to etc/targets/
| + | |
− | ##Open 'e37.target' target definition with target platform editor. For developing for Eclipse 4.2 just use e42.target instead.
| + | |
− | ##Wait until Eclipse resolved all dependencies. Check the progress view to see when resolving finished.
| + | |
− | ##Now click on the 'Set as target platform' link on the upper right corner of the editor.
| + | |
− | #Wait until workspace is rebuild and all compile errors went away (maybe except from a few projects)
| + | |
− | #Done. Start a new Eclipse runtime and trigger code completion on some Eclipse UI classes. The screenshot below gives a feature-based runtime configuration for Eclipse 3.7. Use that as starting point for your own configuration.
| + | |
− | | + | |
− | [[Image:Recommenders_example_runtime_configuration.png|Example Confoguration w/ Eclipse 3.7]]
| + | |
− | | + | |
− | = Troubleshooting =
| + | |
− | | + | |
− | If anything does not work as expected, report it to http://eclipse.org/forums/eclipse.recommenders. We are glad to lend a hand to get the build working for you.
| + | |
− | | + | |
| | | |
| [[Category:Recommenders]] | | [[Category:Recommenders]] |