That is correct.  Another option is to have one of your bundles start an
non-daemon thread itself.  This has issues though because once your bundle
stops (which should stop its own thread) then the VM will stop.

Tom




|------------>
| From:      |
|------------>
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|
  |"Kirchev, Lazar" <[email protected]>                                         
                                                                     |
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|
|------------>
| To:        |
|------------>
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|
  |"Equinox development mailing list" <[email protected]>                 
                                                                     |
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|
|------------>
| Date:      |
|------------>
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|
  |06/10/2009 09:17 AM                                                          
                                                                     |
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|
|------------>
| Subject:   |
|------------>
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|
  |RE: [LIKELY JUNK]Re: [equinox-dev] Keeping the OSGi framework     
fromterminating ifno    application is running                                  
|
  
>--------------------------------------------------------------------------------------------------------------------------------------------------|





Thanks a lot.

We are starting the framework with java -jar org.eclipse.osgi.jar. As far
as I can see, in this case the only way to keep the framework running
without any applications is to use the property
osgi.framework.activeThreadType and cannot be achieved with
osgi.noshutdown. Is this correct?

Regards,
Lazar

From: [email protected] [
mailto:[email protected]] On Behalf Of Thomas Watson
Sent: Wednesday, June 10, 2009 4:28 PM
To: Equinox development mailing list
Subject: RE: [LIKELY JUNK]Re: [equinox-dev] Keeping the OSGi framework
fromterminating ifno application is running



The osgi.noShutdown option is used to disable the code in the launcher that
shuts down the framework and calls System.exit once it has gained access
back to the main thread. If you are running no eclipse application then the
main thread will be returned back to the launcher
(org.eclipse.equinox.launcher jar) immediately. If you are not using
org.eclipse.equinox.launcher to start equinox then you may not need this
option. If you are just using java -jar org.eclipse.osgi.jar then this
option is automatically set for you.

The way to shutdown any OSGi framework is to call Bundle.stop() on the
system bundle (bundle id = 0)

BundleContext context = getContext()
context.getBundle(0).stop();

HTH.

Tom



Inactive hide details for "Kirchev, Lazar" ---06/10/2009 07:27:22
AM---Thank you, Ali, this works just fine."Kirchev, Lazar" ---06/10/2009
07:27:22 AM---Thank you, Ali, this works just fine.,
                                                                       
                                                                       
 From:     "Kirchev, Lazar" <[email protected]>                        
                                                                       
                                                                       
 To:       "Equinox development mailing list" <[email protected]>
                                                                       
                                                                       
 Date:     06/10/2009 07:27 AM                                         
                                                                       
                                                                       
 Subject:  RE: [LIKELY JUNK]Re: [equinox-dev] Keeping the OSGi framework
           from terminating ifno application is running                
                                                                       





Thank you, Ali, this works just fine.

But still, does anybody know what is the effect of osgi.noshutdown? Because
by setting osgi.framework.activeThreadType to normal, the framework stays
active with no applications, regardless if osgi.noshutdown is set to true
or not.

And one more question - if using osgi.framework.activeThreadType, is it
possible to shutdown "gracefully" the framework?

Regards,
Lazar Kirchev

From: [email protected] [
mailto:[email protected].] On Behalf Of Ali Naddaf
Sent: Wednesday, June 10, 2009 3:10 PM
To: Equinox development mailing list
Subject: [LIKELY JUNK]Re: [equinox-dev] Keeping the OSGi framework from
terminating ifno application is running

Set "osgi.framework.activeThreadType=normal" in your config.ini or pass
that to the jre (via "-D") and it should do what you want

HTH,
Ali.

Kirchev, Lazar wrote:
            Hello,

            I have a question regarding the configuration property
            osgi.noshutdown and the corresponding command line parameter
            -noExit. According to the documentation for this property, "if
            "true", the VM will not exit after the eclipse application has
            ended". We are launching Equinox from command line, with
            osgi.noshutdown set to true in the configuration file, and also
            with eclipse.ingnoreApp set to true. We want to have a running
            framework, which is not executing any application. But still,
            the framework terminates. Isn't this in odds with the
            documentation?

            In bug 183208 is described a similar case. It is commented
            there, that the VM exits if there is no non-daemon threads
            running, and the framework does not start such threads, and the
            bug is closed as resolved. But then what is the osgi.noshutdown
            property for? Since the framework exits, then the property does
            not do what it should. In this case, how can we achieve running
            the framework with no application, and without the -console
            option, if possible?

            Kind regards,
            Lazar Kirchev

            _______________________________________________
            equinox-dev mailing list
            [email protected]
            https://dev.eclipse.org/mailman/listinfo/equinox-dev
             _______________________________________________
            equinox-dev mailing list
            [email protected]
            https://dev.eclipse.org/mailman/listinfo/equinox-dev

            _______________________________________________
            equinox-dev mailing list
            [email protected]
            https://dev.eclipse.org/mailman/listinfo/equinox-dev

<<inline: graycol.gif>>

<<inline: ecblank.gif>>

_______________________________________________
equinox-dev mailing list
[email protected]
https://dev.eclipse.org/mailman/listinfo/equinox-dev

Reply via email to