Bug 430630 - Circular dependencies
Summary: Circular dependencies
Status: NEW
Alias: None
Product: z_Archived
Classification: Eclipse Foundation
Component: Libra (show other bugs)
Version: unspecified   Edit
Hardware: PC Windows 7
: P3 normal (vote)
Target Milestone: ---   Edit
Assignee: Project Inbox CLA
QA Contact: Naci Dai CLA
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-03-18 14:37 EDT by Iliya Ivanov CLA
Modified: 2022-02-24 11:24 EST (History)
0 users

See Also:


Attachments
Circular dependencies (17.23 KB, image/png)
2014-03-18 14:37 EDT, Iliya Ivanov CLA
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Iliya Ivanov CLA 2014-03-18 14:37:40 EDT
Created attachment 240989 [details]
Circular dependencies

I have Eclipse for JEE with Libra installed. 
I have 3 OSGI(+Dynamic Web Module Facet) bundles in my Eclipse workspace. The first(let's name it CORE) imports the other 2(DB and MVC) + 3 more packs. DB imports apache-commons-configurations(CORE too), MVC has not any imports. All bundles i need are in the Target platform - Gemini(with "dep" included), apache-commons, etc.

When I try to add my CORE bundle to Equinox Runtime 3.6+ Instance just to start and test there is the circular dependencies, that are not really in the MANIFEST.

In the MANIFEST these 2 packs do not import each others. When I try to add only the first bundle(CORE) to the Runtime, eclipse crashes with "stack overflow". In the server there are infinite dependencies in the DB and MVC bundles between them and I can not continue my work.So, restart. And "stack overflow" again. When I remove the imports from the CORE I can add all 3 bundles without any problem and the runtime starts, CORE bundle is unusable(of course). I tried to create OSGI launcher from Run->Run Configurations. There everything works, but the problem is that Equinox OSGI Runtime can refresh(redeploy) my bundles without need to be restarted, but in the launcher I can not do this.
Comment 1 Iliya Ivanov CLA 2014-03-18 16:11:10 EDT
Some manifest properties
There are not plugins which require each other

CORE manifest:

Bundle-Name: org.proforge.bricks.core
Export-Package: org.proforge.bricks.core
Import-Package: org.apache.commons.configuration;version="1.10.0",
org.apache.commons.lang.exception;version="2.6.0",
org.osgi.framework;version="1.5.0",
org.proforge.bricks.db,
org.proforge.bricks.mvc

DB manifest:

Bundle-Name: org.proforge.bricks.db
Export-Package: org.proforge.bricks.db
Import-Package: org.apache.commons.configuration;version="1.10.0"

MVC manifest:

Bundle-Name: org.proforge.bricks.mvc
Export-Package: org.proforge.bricks.mvc

I put just export/import/name and miss the other properties