blob: bd350be17ce45d6a4ba2a953a1441d77fd7fbb84 [file] [log] [blame]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
<html>
<head>
<script type="text/javascript">var xookiConfig = {level: 1};</script>
<script type="text/javascript" src="../xooki/xooki.js"></script>
</head>
<body>
<textarea id="xooki-source">
Some projects are composed of mulpliple modules, modules having dependencies between them, dependencies managed by Ivy (of course!). Then sometimes we need to build and publish some modules before building the dependant one. Eclipse can handle classpath composed of Java project, it can handles dependencies between projects, and IvyDE can use that feature.
First every of your modules should be separated projects in Eclipse, and each of this project should have an IvyDE classpath container configured.
To enable resolution in the workspace, go into the advanced configuration panel of the classpath container and select <b>Resolve dependencies in workspace</b>.
<center><img src="../images/workspace.jpg"/></center>
<u>Important notes:</u> to make the resolve in workspace work correctly the <i>info</i> in the ivy.xml should be properly set:
<ul>
<li>obviously the <i>org</i> and <i>name</i> </li>
<li>if there is a <i>rev</i> specified, dependencies should specify the appropriate range</li>
<li>if there is no <i>rev</i> specified, only dependencies with <i>lastest</i> will match</li>
<li>the <i>status</i> should match the required one: a dependency with <i>latest.integration</i> will only match if there is <i>status="interation"</i> in the info of the dependant module</li>
</ul>
</textarea>
<script type="text/javascript">xooki.postProcess();</script>
</body>
</html>