[jira] [Commented] (NETBEANS-5613) Support for OSGi modules on Classpath (tests primarily)

2021-04-24 Thread Jaroslav Tulach (Jira)


[ 
https://issues.apache.org/jira/browse/NETBEANS-5613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17331184#comment-17331184
 ] 

Jaroslav Tulach commented on NETBEANS-5613:
---

The NetBeans module system handles classloaders and "other things". The module 
system understands OSGi bundles, but leaves the semantic to some OSGi container 
(Felix or Equinox/NetBinox). When loading (so called "fixed" modules) from 
classpath, the module system handles only the "other things".

It is the responsibility of the application writer to setup classpath 
correctly. E.g. modules on classpath should thus be processed only due to 
"other things" - classloading, "wiring", etc. should be left out.

 

Treat the OSGI bundles on classpath as regular JARs without talking to OSGi 
container at all.

> Support for OSGi modules on Classpath (tests primarily)
> ---
>
> Key: NETBEANS-5613
> URL: https://issues.apache.org/jira/browse/NETBEANS-5613
> Project: NetBeans
>  Issue Type: Improvement
>  Components: platform - Module System
>Reporter: Svatopluk Dedic
>Assignee: Jaroslav Tulach
>Priority: Major
>
> Tests compose their execution environment on the classpath; if module system 
> is triggered (i.e. by a Lookup for Module or ModuleInfo, core loads happily 
> NB modules from the classpath. But does not load OSGi modules.
> Subsequently, NB modules that depends on those won't be 'initialized' 
> although they are well part of  and their code can be 
> actually executed. 
> Modules tha are OSGi in the current distribution are:
>  
> {code:java}
> Bundle-SymbolicName: com.fasterxml.jackson.core.jackson-annotations
> Bundle-SymbolicName: com.fasterxml.jackson.core.jackson-core
> Bundle-SymbolicName: com.fasterxml.jackson.core.jackson-databind
> Bundle-SymbolicName: com.fasterxml.jackson.dataformat.jackson-dataformat
> Bundle-SymbolicName: com.googlecode.javaewah.JavaEWAH
> Bundle-SymbolicName: com.google.guava
> Bundle-SymbolicName: com.jcraft.jzlib
> Bundle-SymbolicName: com.sun.jersey.core
> Bundle-SymbolicName: com.sun.jna
> Bundle-SymbolicName: com.sun.jna.platform
> Bundle-SymbolicName: groovy
> Bundle-SymbolicName: groovy-ant
> Bundle-SymbolicName: javax.annotation-api
> Bundle-SymbolicName: javax.servlet-api
> Bundle-SymbolicName: javax.servlet.jsp.jstl-api
> Bundle-SymbolicName: javax.validation.api
> Bundle-SymbolicName: javax.ws.rs-api
> Bundle-SymbolicName: javax.xml
> Bundle-SymbolicName: javax.xml.soap-api
> Bundle-SymbolicName: jaxb-api
> Bundle-SymbolicName: jaxb-api
> Bundle-SymbolicName: joda-time
> Bundle-SymbolicName: junit-jupiter-api
> Bundle-SymbolicName: junit-jupiter-engine
> Bundle-SymbolicName: junit-jupiter-params
> Bundle-SymbolicName: net.java.html
> Bundle-SymbolicName: net.java.html.boot
> Bundle-SymbolicName: net.java.html.boot.fx
> Bundle-SymbolicName: net.java.html.boot.script
> Bundle-SymbolicName: net.java.html.geo
> Bundle-SymbolicName: net.java.html.json
> Bundle-SymbolicName: net.java.html.sound
> Bundle-SymbolicName: org.apache.commons.beanutils
> Bundle-SymbolicName: org.apache.commons.chain
> Bundle-SymbolicName: org.apache.commons.codec
> Bundle-SymbolicName: org.apache.commons.commons-fileupload
> Bundle-SymbolicName: org.apache.commons.io
> Bundle-SymbolicName: org.apache.commons.logging
> Bundle-SymbolicName: org.apache.felix.main
> Bundle-SymbolicName: org.apache.xmlrpc
> Bundle-SymbolicName: org.eclipse.core.jobs; singleton:=true
> Bundle-SymbolicName: org.eclipse.core.runtime.compatibility.auth
> Bundle-SymbolicName: org.eclipse.core.runtime; singleton:=true
> Bundle-SymbolicName: org.eclipse.equinox.common; singleton:=true
> Bundle-SymbolicName: org.eclipse.equinox.registry;singleton:=true
> Bundle-SymbolicName: org.eclipse.equinox.security;singleton:=true
> Bundle-SymbolicName: org.eclipse.mylyn.bugzilla.core;singleton:=true
> Bundle-SymbolicName: org.eclipse.mylyn.tasks.core;singleton:=true
> Bundle-SymbolicName: org.eclipse.mylyn.wikitext.confluence.core;single
> Bundle-SymbolicName: org.eclipse.mylyn.wikitext.markdown.core;singleto
> Bundle-SymbolicName: org.eclipse.osgi; singleton:=true
> Bundle-SymbolicName: org.glassfish.hk2.api
> Bundle-SymbolicName: org.glassfish.hk2.external.asm-all-repackaged
> Bundle-SymbolicName: org.glassfish.hk2.external.cglib
> Bundle-SymbolicName: org.glassfish.hk2.external.javax.inject
> Bundle-SymbolicName: org.glassfish.hk2.locator
> Bundle-SymbolicName: org.glassfish.hk2.osgi-resource-locator
> Bundle-SymbolicName: org.glassfish.hk2.utils
> Bundle-SymbolicName: org.glassfish.javax.el
> Bundle-SymbolicName: org.glassfish.javax.faces
> Bundle-SymbolicName: org.glassfish.jersey.containers.jersey-container-se
> Bundle-SymbolicName: org.glassfish.jersey.core.jersey-client
> Bundle-SymbolicName: org.glassfish.jersey.core.jersey-common

[jira] [Commented] (NETBEANS-5613) Support for OSGi modules on Classpath (tests primarily)

2021-04-23 Thread Svatopluk Dedic (Jira)


[ 
https://issues.apache.org/jira/browse/NETBEANS-5613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=17330180#comment-17330180
 ] 

Svatopluk Dedic commented on NETBEANS-5613:
---

I put the work-in-progress changes here: 

[https://github.com/apache/netbeans/compare/master...sdedic:sdedic/osgi-classpath-wip]

 

> Support for OSGi modules on Classpath (tests primarily)
> ---
>
> Key: NETBEANS-5613
> URL: https://issues.apache.org/jira/browse/NETBEANS-5613
> Project: NetBeans
>  Issue Type: Improvement
>  Components: platform - Module System
>Reporter: Svatopluk Dedic
>Assignee: Jaroslav Tulach
>Priority: Major
>
> Tests compose their execution environment on the classpath; if module system 
> is triggered (i.e. by a Lookup for Module or ModuleInfo, core loads happily 
> NB modules from the classpath. But does not load OSGi modules.
> Subsequently, NB modules that depends on those won't be 'initialized' 
> although they are well part of  and their code can be 
> actually executed. 
> Modules tha are OSGi in the current distribution are:
>  
> {code:java}
> Bundle-SymbolicName: com.fasterxml.jackson.core.jackson-annotations
> Bundle-SymbolicName: com.fasterxml.jackson.core.jackson-core
> Bundle-SymbolicName: com.fasterxml.jackson.core.jackson-databind
> Bundle-SymbolicName: com.fasterxml.jackson.dataformat.jackson-dataformat
> Bundle-SymbolicName: com.googlecode.javaewah.JavaEWAH
> Bundle-SymbolicName: com.google.guava
> Bundle-SymbolicName: com.jcraft.jzlib
> Bundle-SymbolicName: com.sun.jersey.core
> Bundle-SymbolicName: com.sun.jna
> Bundle-SymbolicName: com.sun.jna.platform
> Bundle-SymbolicName: groovy
> Bundle-SymbolicName: groovy-ant
> Bundle-SymbolicName: javax.annotation-api
> Bundle-SymbolicName: javax.servlet-api
> Bundle-SymbolicName: javax.servlet.jsp.jstl-api
> Bundle-SymbolicName: javax.validation.api
> Bundle-SymbolicName: javax.ws.rs-api
> Bundle-SymbolicName: javax.xml
> Bundle-SymbolicName: javax.xml.soap-api
> Bundle-SymbolicName: jaxb-api
> Bundle-SymbolicName: jaxb-api
> Bundle-SymbolicName: joda-time
> Bundle-SymbolicName: junit-jupiter-api
> Bundle-SymbolicName: junit-jupiter-engine
> Bundle-SymbolicName: junit-jupiter-params
> Bundle-SymbolicName: net.java.html
> Bundle-SymbolicName: net.java.html.boot
> Bundle-SymbolicName: net.java.html.boot.fx
> Bundle-SymbolicName: net.java.html.boot.script
> Bundle-SymbolicName: net.java.html.geo
> Bundle-SymbolicName: net.java.html.json
> Bundle-SymbolicName: net.java.html.sound
> Bundle-SymbolicName: org.apache.commons.beanutils
> Bundle-SymbolicName: org.apache.commons.chain
> Bundle-SymbolicName: org.apache.commons.codec
> Bundle-SymbolicName: org.apache.commons.commons-fileupload
> Bundle-SymbolicName: org.apache.commons.io
> Bundle-SymbolicName: org.apache.commons.logging
> Bundle-SymbolicName: org.apache.felix.main
> Bundle-SymbolicName: org.apache.xmlrpc
> Bundle-SymbolicName: org.eclipse.core.jobs; singleton:=true
> Bundle-SymbolicName: org.eclipse.core.runtime.compatibility.auth
> Bundle-SymbolicName: org.eclipse.core.runtime; singleton:=true
> Bundle-SymbolicName: org.eclipse.equinox.common; singleton:=true
> Bundle-SymbolicName: org.eclipse.equinox.registry;singleton:=true
> Bundle-SymbolicName: org.eclipse.equinox.security;singleton:=true
> Bundle-SymbolicName: org.eclipse.mylyn.bugzilla.core;singleton:=true
> Bundle-SymbolicName: org.eclipse.mylyn.tasks.core;singleton:=true
> Bundle-SymbolicName: org.eclipse.mylyn.wikitext.confluence.core;single
> Bundle-SymbolicName: org.eclipse.mylyn.wikitext.markdown.core;singleto
> Bundle-SymbolicName: org.eclipse.osgi; singleton:=true
> Bundle-SymbolicName: org.glassfish.hk2.api
> Bundle-SymbolicName: org.glassfish.hk2.external.asm-all-repackaged
> Bundle-SymbolicName: org.glassfish.hk2.external.cglib
> Bundle-SymbolicName: org.glassfish.hk2.external.javax.inject
> Bundle-SymbolicName: org.glassfish.hk2.locator
> Bundle-SymbolicName: org.glassfish.hk2.osgi-resource-locator
> Bundle-SymbolicName: org.glassfish.hk2.utils
> Bundle-SymbolicName: org.glassfish.javax.el
> Bundle-SymbolicName: org.glassfish.javax.faces
> Bundle-SymbolicName: org.glassfish.jersey.containers.jersey-container-se
> Bundle-SymbolicName: org.glassfish.jersey.core.jersey-client
> Bundle-SymbolicName: org.glassfish.jersey.core.jersey-common
> Bundle-SymbolicName: org.glassfish.jersey.core.jersey-server
> Bundle-SymbolicName: org.glassfish.jersey.ext.jersey-entity-filtering
> Bundle-SymbolicName: org.glassfish.jersey.media.jersey-media-moxy
> Bundle-SymbolicName: org.glassfish.web.javax.servlet.jsp.jstl
> Bundle-SymbolicName: org.json
> Bundle-SymbolicName: org.netbeans.html.ko4j
> Bundle-SymbolicName: org.netbeans.html.xhr4j
> Bundle-SymbolicName: org.primefaces
> Bundle-SymbolicName: osgi.cmpn
>