- Documentation (2.3.0.rc1-201806251008-RELEASE)
Use with Maven POMs
If you want to use a Apache Maven™ pom.xml
instead of an ivy.xml
file, you can select a POM file in the configuration options of the IvyDE classpath.
When a Maven POM is selected, the configurations list is updated with all Maven scopes.
Both examples below are a good illustration of the simplicity of using Maven POMs in Apache IvyDE:
Maven1 Sample
This sample presents a simple use case involving a Maven POM and the IvyDE classpath container. We are going to create an Eclipse™ project on commons-httpclient sources.
-
Download the commons httpclient sources
-
Unzip this file (c:/tmp/commons-httpclient/)
-
Create a new Eclipse Java project based on the unzipped sources (c:/tmp/commons-httpclient/)

Note: your project will not compile: some imports cannot be resolved.
-
Add a new classpath container based on the "project.xml" POM and select "default" configuration (Maven scope)

-
Finished. The project compiles!

Maven2 Sample
This sample demonstrates how the IvyDE classpath container on a Apache Maven POM can handle transitive dependencies.
-
Create a new empty Java project in Eclipse.
-
In your project, create an
ivysettings.xml
file:
<ivysettings>
<conf defaultResolver="ibiblio"/>
<resolvers>
<ibiblio name="ibiblio" />
</resolvers>
</ivysettings>
Using the m2compatible
attribute, you can benefit from Apache Maven 2 repository compatibility.
-
In your project, create a
pom.xml
file:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.mycompany</groupId>
<artifactId>myproject</artifactId>
<version>1.0-SNAPSHOT</version>
<dependencies>
<dependency>
<groupId>commons-httpclient</groupId>
<artifactId>commons-httpclient</artifactId>
<version>3.0</version>
</dependency>
</dependencies>
</project>
-
On the
pom.xml
file, open the context menu and click on "Add Ivy Library…": -
Select the configurations
compile
andruntime

-
click "Finish"
-
That’s all! Your IvyDE classpath container resolves all dependencies including those that were transitive to the commons-httpclient module!
