Applied Maxim's DIRAPI-353 patch
diff --git a/all/pom.xml b/all/pom.xml
index 3680635..c9213e3 100644
--- a/all/pom.xml
+++ b/all/pom.xml
@@ -126,6 +126,14 @@
               </artifactSet>
               <promoteTransitiveDependencies>true</promoteTransitiveDependencies>
               <createSourcesJar>true</createSourcesJar>
+              <transformers>
+                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+                  <manifestEntries>
+                    <Automatic-Module-Name>apache.directory.ldap.api.all</Automatic-Module-Name>
+                  </manifestEntries>
+                </transformer>
+              </transformers>
+
             </configuration>
           </execution>
         </executions>
diff --git a/asn1/api/pom.xml b/asn1/api/pom.xml
index a7bf288..d4afb2d 100644
--- a/asn1/api/pom.xml
+++ b/asn1/api/pom.xml
@@ -91,6 +91,7 @@
             <Import-Package>
               org.apache.directory.api.i18n;version=${project.version}
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.asn1.api</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/asn1/ber/pom.xml b/asn1/ber/pom.xml
index 7611f7b..fb1935c 100644
--- a/asn1/ber/pom.xml
+++ b/asn1/ber/pom.xml
@@ -94,6 +94,7 @@
               org.apache.directory.api.util;version=${project.version},
               org.slf4j;version=${slf4j.api.bundleversion}
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.asn1.ber</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/dsml/engine/pom.xml b/dsml/engine/pom.xml
index 86bc782..aef04fd 100644
--- a/dsml/engine/pom.xml
+++ b/dsml/engine/pom.xml
@@ -96,6 +96,7 @@
               org.slf4j;version=${slf4j.api.bundleversion},
               org.xmlpull.v1;version=${xpp3.version}
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.dsml.engine</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/dsml/parser/pom.xml b/dsml/parser/pom.xml
index 078e1ab..369a2e7 100644
--- a/dsml/parser/pom.xml
+++ b/dsml/parser/pom.xml
@@ -143,6 +143,7 @@
               javax.xml.transform,
               javax.xml.transform.stream
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.dsml.parser</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/i18n/pom.xml b/i18n/pom.xml
index ffad93a..2b3fded 100644
--- a/i18n/pom.xml
+++ b/i18n/pom.xml
@@ -63,6 +63,7 @@
             <Export-Package>
               org.apache.directory.api.i18n;version=${project.version};-noimport:=true
             </Export-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.i18n</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/client/all/pom.xml b/ldap/client/all/pom.xml
index cd32ad0..ba410d7 100644
--- a/ldap/client/all/pom.xml
+++ b/ldap/client/all/pom.xml
@@ -89,6 +89,13 @@
             <configuration>
               <createDependencyReducedPom>true</createDependencyReducedPom>
               <createSourcesJar>true</createSourcesJar>
+              <transformers>
+                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+                  <manifestEntries>
+                    <Automatic-Module-Name>apache.directory.ldap.api.client.all</Automatic-Module-Name>
+                  </manifestEntries>
+                </transformer>
+              </transformers>
             </configuration>
           </execution>
         </executions>
diff --git a/ldap/client/api/pom.xml b/ldap/client/api/pom.xml
index ca36465..600c305 100644
--- a/ldap/client/api/pom.xml
+++ b/ldap/client/api/pom.xml
@@ -190,6 +190,7 @@
               javax.security.sasl,
               javax.net.ssl
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.client.api</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/codec/core/pom.xml b/ldap/codec/core/pom.xml
index 23e784a..fd99f29 100644
--- a/ldap/codec/core/pom.xml
+++ b/ldap/codec/core/pom.xml
@@ -159,6 +159,7 @@
             <Bundle-Activator>
               org.apache.directory.api.ldap.codec.osgi.DefaultActivator
             </Bundle-Activator>
+	    <Automatic-Module-Name>apache.directory.ldap.api.extras.codec.core</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/codec/standalone/pom.xml b/ldap/codec/standalone/pom.xml
index bd7863b..298310c 100644
--- a/ldap/codec/standalone/pom.xml
+++ b/ldap/codec/standalone/pom.xml
@@ -88,6 +88,7 @@
           </supportedProjectTypes>
           <instructions>
             <Export-Package>*</Export-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.extras.codec.standalone</Automatic-Module-Name>
           </instructions>
         </configuration>
         <executions>
diff --git a/ldap/extras/aci/pom.xml b/ldap/extras/aci/pom.xml
index 6a2ec78..e75c771 100644
--- a/ldap/extras/aci/pom.xml
+++ b/ldap/extras/aci/pom.xml
@@ -112,6 +112,7 @@
               org.apache.directory.api.util;version=${project.version},
               org.slf4j;version=${slf4j.api.bundleversion}
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.extras.aci</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/extras/codec-api/pom.xml b/ldap/extras/codec-api/pom.xml
index 9ed686b..e5add7f 100644
--- a/ldap/extras/codec-api/pom.xml
+++ b/ldap/extras/codec-api/pom.xml
@@ -90,6 +90,7 @@
               org.apache.directory.api.util;version=${project.version},
               org.apache.directory.api.util.exception;version=${project.version}
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.extras.codec.api</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/extras/codec/pom.xml b/ldap/extras/codec/pom.xml
index 7ec9606..8093024 100644
--- a/ldap/extras/codec/pom.xml
+++ b/ldap/extras/codec/pom.xml
@@ -177,6 +177,7 @@
             <Bundle-Activator>
               org.apache.directory.api.ldap.extras.ExtrasBundleActivator
             </Bundle-Activator>
+            <Automatic-Module-Name>apache.directory.ldap.api.extras.codec</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/extras/sp/pom.xml b/ldap/extras/sp/pom.xml
index 291097c..27049ec 100644
--- a/ldap/extras/sp/pom.xml
+++ b/ldap/extras/sp/pom.xml
@@ -92,6 +92,7 @@
               javax.naming.directory,
               javax.naming.ldap
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.extras.sp</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/extras/trigger/pom.xml b/ldap/extras/trigger/pom.xml
index 5031c9c..72e157e 100644
--- a/ldap/extras/trigger/pom.xml
+++ b/ldap/extras/trigger/pom.xml
@@ -117,6 +117,7 @@
               javax.naming.directory,
               javax.naming.ldap
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.extras.trigger</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/extras/util/pom.xml b/ldap/extras/util/pom.xml
index 0860269..ab85c59 100644
--- a/ldap/extras/util/pom.xml
+++ b/ldap/extras/util/pom.xml
@@ -79,6 +79,7 @@
               javax.naming.directory,
               javax.naming.ldap
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.extras.util</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/model/pom.xml b/ldap/model/pom.xml
index da6e600..e1cb619 100644
--- a/ldap/model/pom.xml
+++ b/ldap/model/pom.xml
@@ -210,6 +210,7 @@
               javax.naming.directory,
               javax.naming.ldap
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.model</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/net/mina/pom.xml b/ldap/net/mina/pom.xml
index 24ca849..339fc16 100644
--- a/ldap/net/mina/pom.xml
+++ b/ldap/net/mina/pom.xml
@@ -83,6 +83,7 @@
             <Bundle-Activator>
               org.apache.directory.api.ldap.codec.protocol.mina.LdapProtocolCodecActivator
             </Bundle-Activator>
+            <Automatic-Module-Name>apache.directory.ldap.api.net.mina</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/schema/converter/pom.xml b/ldap/schema/converter/pom.xml
index 9ea916c..7399885 100644
--- a/ldap/schema/converter/pom.xml
+++ b/ldap/schema/converter/pom.xml
@@ -139,6 +139,7 @@
               *
               ]]>
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.schema.converter</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/ldap/schema/data/pom.xml b/ldap/schema/data/pom.xml
index 68de390..5350bf5 100644
--- a/ldap/schema/data/pom.xml
+++ b/ldap/schema/data/pom.xml
@@ -171,6 +171,7 @@
               org.apache.directory.api.util;version=${project.version},
               org.slf4j;version=${slf4j.api.bundleversion}
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.schema.data</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>
diff --git a/util/pom.xml b/util/pom.xml
index 58d8fc3..c86ab5b 100644
--- a/util/pom.xml
+++ b/util/pom.xml
@@ -101,6 +101,7 @@
               javax.naming.directory,
               javax.naming.ldap
             </Import-Package>
+            <Automatic-Module-Name>apache.directory.ldap.api.util</Automatic-Module-Name>
           </instructions>
         </configuration>
       </plugin>