ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Nicolas Lalevée <nicolas.lale...@hibnet.org>
Subject Re: OSGI and IVY
Date Wed, 21 Jul 2010 13:07:22 GMT
On Wednesday 21 July 2010 12:04:28 Martin Weber wrote:
> Am 20.07.2010 19:53, schrieb Shawn Castrianni:
> > Has anybody researched the relationship between OSGI and IVY?  I have
>
> I have a build system that builds some OSGI bundles with Ivy and Ant.
> But its really limited.
>
> > a large build system running on IVY and is working great.  However,
> > development wants to move towards an OSGI runtime framework which
> > impacts how the modules are built.  I am trying to figure out how I
> > can merge in OSGI bundle creation with my IVY based build system.
> >
> > I am finding that the dependency mechanism and publish mechanism in
> > OSGI is fighting with the same concepts in IVY.  Therefore, I am not
> > making any progress on this OSGI project.
>
> I don't think these mechanisms are fighting the same concepts: The
> dependency mechanism in OSGI is targeted to provide a classpath that is
> needed at runtime. Ivy (with its concept of configurations) can handle
> much more: I use it to provide one classpath for compile time, one for
> run-time (to set the ClassPath-attribute in MANIFEST.MF) and finally to
> retrieve all files that get shipped to customers.
>
> The main limitations of Ivy/Ant to build OSGI-bundles are caused by the
> structure of bundles from the dependencies (at compile time):
> 1) bundle jar with classes/resources: This can be handled by Ivy/Ant.
> 2) a bundle jar that contains other jars: the Java compiler will not
> look at the inner jars.
> 3) the bundle is a directory with jars and other files: Bundles of this
> structure can neither be published nor retrieved by Ivy.
>
> With structure 2 and 3 you will have difficulties to construct a
> class-path for the java compiler.

I think thoses issues are more related to the compiler than the dependency 
management. And 3 is just an "unzipped" view of 2. That's why to build 
Eclipse plugins (which are OSGi bundles), you have to use the Eclipse Ant 
runtime and builder.

Nicolas

Mime
View raw message