Netbeans Platform Friend dependencies

May 27th, 2009 | by Tonny Kohar |

Recently on the nbdev ( mailing list someone ask a question regarding friend dependencies, because he/she I got the following Error:

The module some.package.path is not a friend of some-path\some.jar

So what is friend dependency anyways. Friend Dependency is caused by a Module that have an API which its author is not yet comfortable exposing to just anyone, because it might not be fully stabilized yet. In this case, the module with the API can declare some public packages, but also stipulate that only a predefined list of “friend modules” are permitted to use them. The friend modules just declare a regular specification version dependency, but unknown modules are not permitted to use any packages from the API module.

So in order to declare a dependency to that module, you need to use an implementation dependency. Please read the following Netbeans Wiki Dev FAQ on how to declare this implementation dependency and to enable friend dependency.

note: please also understand that implementation dependencies cause special problems for Auto Update. It is explained on the Netbeans Wiki Dev FAQ as well

Tags: ,

  1. 3 Responses to “Netbeans Platform Friend dependencies”

  2. By Varun Nischal on May 27, 2009 | Reply

    Hi Tonny,

    I had blogged[1] something in relation to this long time back. I hope this helps too!


  3. By silhanek on Jun 10, 2009 | Reply

    I use downloaded stable platform and I tried to modify GSF module jars and copy them by ant to unzipped platform begore build.

    If you download new build

    To the MANIFEST.MF file into OpenIDE-Module-Friends: section add these modules

    , org.netbeans.modules.karel.files, org.netbeans.modules.karel.files.lang

  4. By silhanek on Feb 22, 2010 | Reply

    I made it to try if it get work. If you will have your module is a friend you must ask the module’s author.

You must be logged in to post a comment.