[ 
https://issues.apache.org/jira/browse/DERBY-7056?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16955427#comment-16955427
 ] 

Mark Raynsford commented on DERBY-7056:
---------------------------------------

If you take a look at the manifest for the derby.jar on Central, you see:

{noformat}
Ant-Version                              Apache Ant 1.10.2                      
 
Bundle-Activator                         
org.apache.derby.osgi.EmbeddedActivator 
Bundle-ManifestVersion                   2                                      
 
Bundle-Name                              Apache Derby 10.15                     
 
Bundle-SymbolicName                      derby                                  
 
Bundle-Vendor                            Apache Software Foundation             
 
Bundle-Version                           10.15.1000003.1853019                  
 
Class-Path                               derbyshared.jar derbyLocale_cs.jar 
derbyLocale_de_DE.jar derbyLocale_es.jar derbyLocale_fr.jar derbyLocale_hu.jar 
derbyLocale_it.jar derbyLocale_ja_JP.jar derbyLocale_ko_KR.jar 
derbyLocale_pl.jar derbyLocale_pt_BR.jar derbyLocale_ru.jar 
derbyLocale_zh_CN.jar derbyLocale_zh_TW.jar
Created-By                               11+28 (Oracle Corporation)             
 
DynamicImport-Package                    *                                      
 
Export-Package                           
org.apache.derby.authentication,org.apache.derby.database,org.apache.derby.io,org.apache.derby.jdbc,org.apache.derby.vti
Manifest-Version                         1.0                                    
 
Sealed                                   true                                   
 

[IMPEXP]
Export-Package
  org.apache.derby.authentication        
  org.apache.derby.database              
  org.apache.derby.io                    
  org.apache.derby.jdbc                  
  org.apache.derby.vti
{noformat}

Which is _ok_ but not optimal (no versioned exports, etc). The problem is that 
none of the other jars (derbyshared, derbynet, etc) have manifests at all. My 
use case is primarily Derby in embedded mode and I occasionally reference 
things like vendor-specific SQL error codes (defined in derbyshared). The lack 
of manifests in those jars makes this impossible.

I _highly_ recommend using Bnd instead of putting the manifest together 
manually. Bnd does extensive analysis to ensure that all the metadata is 
correct.

> Make Derby modules usable by OSGi-aware applications
> ----------------------------------------------------
>
>                 Key: DERBY-7056
>                 URL: https://issues.apache.org/jira/browse/DERBY-7056
>             Project: Derby
>          Issue Type: Task
>          Components: Build tools
>    Affects Versions: 10.15.1.3
>            Reporter: Richard N. Hillegas
>            Assignee: Richard N. Hillegas
>            Priority: Major
>
> OSGi R7 introduced support for JPMS modules in 2018 according to 
> https://blog.osgi.org/2018/02/osgi-r7-highlights-java-9-support.html. This 
> includes additional information which goes into jar file manifests. Support 
> for this OSGi information was requested by an email thread on the user list: 
> http://apache-database.10148.n7.nabble.com/OSGi-manifest-headers-td150560.html.
>  We need advice from OSGi experts on how to make Derby modules usable by 
> OSGi-aware applications. 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to