Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [equinox-dev] Strange class loading behaviour

I agree, it is frustrating. Unfortunately Eclipse PDE has bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=164188


Tom



Inactive hide details for Patrik Åkerfeldt ---02/16/2010 05:43:56 AM---It's quite frustrating to not identify missing imports (Patrik Åkerfeldt ---02/16/2010 05:43:56 AM---It's quite frustrating to not identify missing imports (of javax.* for example) until running the application standalone in a t


From:

Patrik Åkerfeldt <patrik.akerfeldt@xxxxxxxxx>

To:

Equinox development mailing list <equinox-dev@xxxxxxxxxxx>

Date:

02/16/2010 05:43 AM

Subject:

Re: [equinox-dev] Strange class loading behaviour




It's quite frustrating to not identify missing imports (of javax.* for example) until running the application standalone in a target system as the Eclipse IDE is forgiving about them.
Is there a way to detect such missing imports directly while developing in the Eclipse IDE?

Thanks,
Patrik

2010/1/29 Thomas Watson <tjwatson@xxxxxxxxxx>
    Correct, setting the option to false should solve your issue.

    Tom



    Inactive hide details for Patrik Åkerfeldt ---01/29/2010 11:23:14 AM---Launching Equinox using the framework launching API isn'Patrik Åkerfeldt ---01/29/2010 11:23:14 AM---Launching Equinox using the framework launching API isn't for typical Eclipse usage, is it? But what you're saying is that the


From:

Patrik Åkerfeldt <patrik.akerfeldt@xxxxxxxxx>

To:

Equinox development mailing list <equinox-dev@xxxxxxxxxxx>

Date:

01/29/2010 11:23 AM

Subject:

Re: [equinox-dev] Strange class loading behaviour





    Launching Equinox using the framework launching API isn't for typical Eclipse usage, is it? But what you're saying is that the compatibility flag is set to true when launching through this API? So manually setting osgi.compatibility.bootdelegation=false would solve my "problem"?

    Thanks,
    -Patrik


    2010/1/29 Thomas Watson <
    tjwatson@xxxxxxxxxx>
        See bug https://bugs.eclipse.org/bugs/show_bug.cgi?id=178477 for the history.

        When launching Equinox for the typical Eclipse usage we have a compatibility flag enabled that allows a last resort boot delegation. When launching Equinox standalone this compatibility flag is disabled.

        Tom



        Inactive hide details for Patrik Åkerfeldt ---01/29/2010 01:50:04 AM---Imagine a very simple bundle who's just printing javax.xPatrik Åkerfeldt ---01/29/2010 01:50:04 AM---Imagine a very simple bundle who's just printing javax.xml.parsers.ParserConfigurationException.class.getName() when started. R

    From:

    Patrik Åkerfeldt <
    patrik.akerfeldt@xxxxxxxxx>

    To:

    equinox-dev@xxxxxxxxxxx

    Date:

    01/29/2010 01:50 AM

    Subject:

    [equinox-dev] Strange class loading behaviour





        Imagine a very simple bundle who's just printing javax.xml.parsers.ParserConfigurationException.class.getName() when started.

        Running this with Equinox standalone yields a ClassNotFoundException.
        "java -jar org.eclipse.osgi_3.5.1.R35x_v20090827.jar -configuration /home/stpaja/test/plugins/configuration/ -consoleLog"

        Which is perfectly normal according the OSGi core specification which states that everything outside java.* must be imported (or implicitly loaded using boot delegation).

        But, and here's the strange thing, when using a custom OSGi framework launcher the class name is printed and no ClassNotFoundException is thrown. I've implemented a very simple launcher which reads a config.ini file and installs/starts the bundles. It does not set any OSGi properties aside from those defined in config.ini.

        The framework is started in the following manner:
        java -cp my.launcher_1.0.0.jar:org.eclipse.osgi_3.5.1.R35x_v20090827.jar my.launcher.OsgiLauncher /home/stpaja/test/plugins/configuration/config.ini /home/stpaja/test/plugins/

        Here's the content of config.ini (the same config.ini is used in both startups):
        osgi.console=5555
        osgi.bundles=aaaa_1.0.0.jar@start

        Why is it that the bundle class loader finds javax.xml.parsers.ParserConfigurationException when started from a custom launcher instead of Equinox?

        Thanks,
        -Patrik Åkerfeldt
        _______________________________________________
        equinox-dev mailing list

        equinox-dev@xxxxxxxxxxx
        https://dev.eclipse.org/mailman/listinfo/equinox-dev



        _______________________________________________
        equinox-dev mailing list

        equinox-dev@xxxxxxxxxxx
        https://dev.eclipse.org/mailman/listinfo/equinox-dev
    _______________________________________________
    equinox-dev mailing list

    equinox-dev@xxxxxxxxxxx
    https://dev.eclipse.org/mailman/listinfo/equinox-dev



    _______________________________________________
    equinox-dev mailing list

    equinox-dev@xxxxxxxxxxx
    https://dev.eclipse.org/mailman/listinfo/equinox-dev
_______________________________________________
equinox-dev mailing list
equinox-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/equinox-dev


GIF image

GIF image


Back to the top