title: Trying to build an OSGi bundle in Maven with embedded dependencies. Can't seem to exclude transitive dependencies from BND classpath
body: <p>Basically, my web service must be deployable as a single OSGi jar bundle. Therefore:</p>
  
  <ol>
  <li>The bundle must contain all compile and runtime maven dependencies.</li>
  <li>It must also contain all non-optional dependencies that depend on those dependencies (i.e., the transitive dependencies).</li>
  </ol>
  
  <p>I'm attempting to use the maven-bundle-plugin to accomplish this. I've used Embed-Dependency to get all my compile and runtime dependencies in the bundle, and I've used Embed-Transitive to embed all the transitive dependencies. I then figured out how to use excludeDependencies to exclude Maven dependencies from the BND classpath (they are moved to Private-Package in the Manifest), but for the life of me I can't figure out how to get it to exclude the transitive dependencies. No matter what I do, the transitive dependencies still seem to show up in the Import-Package list in the Manifest.</p>
  
  <p>Worse, it seems to suck in ALL dependencies including optional ones so I get lots of extra stuff I don't use like ibatis and jfree. Yet, when I add ;optional=false to the dependency pattern, I get a warning that no dependencies matched the pattern.</p>
  
  <p>I started trying to exclude dependencies one by one but after an hour of chasing down dependencies I decided there had to be a better way.</p>
  
  <p>This is the current incarnation of my pom.xml. Can anyone help me resolve this?</p>
  
  <pre><code>&lt;project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"&gt;
  &lt;modelVersion&gt;4.0.0&lt;/modelVersion&gt;
  
  &lt;parent&gt;
      &lt;artifactId&gt;direct-parent&lt;/artifactId&gt;
      &lt;groupId&gt;com.edo.direct&lt;/groupId&gt;
      &lt;version&gt;1.0-SNAPSHOT&lt;/version&gt;
      &lt;relativePath&gt;../direct-parent&lt;/relativePath&gt;
  &lt;/parent&gt;
  
  &lt;artifactId&gt;direct-registration&lt;/artifactId&gt;
  &lt;packaging&gt;bundle&lt;/packaging&gt;
  
  &lt;repositories&gt;
      &lt;repository&gt;
          &lt;id&gt;wso2&lt;/id&gt;
          &lt;url&gt;http://dist.wso2.org/maven2/&lt;/url&gt;
      &lt;/repository&gt;
  &lt;/repositories&gt;
  
  &lt;build&gt;
      &lt;plugins&gt;
  
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.felix&lt;/groupId&gt;
              &lt;artifactId&gt;maven-bundle-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.3.5&lt;/version&gt;
              &lt;extensions&gt;true&lt;/extensions&gt;
              &lt;executions&gt;
                  &lt;execution&gt;
                      &lt;phase&gt;package&lt;/phase&gt;
                      &lt;goals&gt;
                          &lt;goal&gt;bundle&lt;/goal&gt;
                      &lt;/goals&gt;
                  &lt;/execution&gt;
              &lt;/executions&gt;
              &lt;configuration&gt;
                  &lt;excludeDependencies&gt;*;scope=compile|runtime&lt;/excludeDependencies&gt;
                  &lt;ignoreMissingArtifacts&gt;true&lt;/ignoreMissingArtifacts&gt;
                  &lt;instructions&gt;
                      &lt;Bundle-Vendor&gt;edo Interactive&lt;/Bundle-Vendor&gt;
                      &lt;Bundle-SymbolicName&gt;com.edo.direct.service&lt;/Bundle-SymbolicName&gt;
                      &lt;Export-Package&gt;
                          com.edo.service;-split-package:=merge-first
                      &lt;/Export-Package&gt;
                      &lt;Embed-Dependency&gt;*;scope=compile|runtime&lt;/Embed-Dependency&gt;
                      &lt;Embed-Transitive&gt;true&lt;/Embed-Transitive&gt;
                      &lt;Import-Package&gt;
                          *
                      &lt;/Import-Package&gt;
                      &lt;Private-Package&gt;
                          com.edo*;-split-package:=merge-first,
                      &lt;/Private-Package&gt;
                      &lt;Include-Resource&gt;
                          {maven-resources}
                      &lt;/Include-Resource&gt;
                      &lt;Bundle-ClassPath&gt;.,{maven-dependencies}&lt;/Bundle-ClassPath&gt;
                  &lt;/instructions&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
  
          &lt;plugin&gt;
              &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
              &lt;artifactId&gt;maven-surefire-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.9&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;includes&gt;
                      &lt;include&gt;**/*Test.java&lt;/include&gt;
                  &lt;/includes&gt;
              &lt;/configuration&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt;
              &lt;artifactId&gt;build-helper-maven-plugin&lt;/artifactId&gt;
              &lt;version&gt;1.5&lt;/version&gt;
              &lt;executions&gt;
                  &lt;execution&gt;
                      &lt;id&gt;add-source&lt;/id&gt;
                      &lt;phase&gt;generate-sources&lt;/phase&gt;
                      &lt;goals&gt;
                          &lt;goal&gt;add-source&lt;/goal&gt;
                      &lt;/goals&gt;
                      &lt;configuration&gt;
                          &lt;sources&gt;
                              &lt;source&gt;src/main/groovy&lt;/source&gt;
                          &lt;/sources&gt;
                      &lt;/configuration&gt;
                  &lt;/execution&gt;
                  &lt;execution&gt;
                      &lt;id&gt;add-test-source&lt;/id&gt;
                      &lt;phase&gt;generate-test-sources&lt;/phase&gt;
                      &lt;goals&gt;
                          &lt;goal&gt;add-test-source&lt;/goal&gt;
                      &lt;/goals&gt;
                      &lt;configuration&gt;
                          &lt;sources&gt;
                              &lt;source&gt;src/test/groovy&lt;/source&gt;
                          &lt;/sources&gt;
                      &lt;/configuration&gt;
                  &lt;/execution&gt;
              &lt;/executions&gt;
          &lt;/plugin&gt;
          &lt;plugin&gt;
              &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
              &lt;version&gt;2.3.1&lt;/version&gt;
              &lt;configuration&gt;
                  &lt;compilerId&gt;groovy-eclipse-compiler&lt;/compilerId&gt;
                  &lt;verbose&gt;true&lt;/verbose&gt;
                  &lt;source&gt;1.6&lt;/source&gt;
                  &lt;target&gt;1.6&lt;/target&gt;
              &lt;/configuration&gt;
              &lt;dependencies&gt;
                  &lt;dependency&gt;
                      &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
                      &lt;artifactId&gt;groovy-eclipse-batch&lt;/artifactId&gt;
                      &lt;version&gt;1.8.0-03&lt;/version&gt;
                  &lt;/dependency&gt;
                  &lt;dependency&gt;
                      &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
                      &lt;artifactId&gt;groovy-eclipse-compiler&lt;/artifactId&gt;
                      &lt;version&gt;2.5.1&lt;/version&gt;
                      &lt;exclusions&gt;
                          &lt;exclusion&gt;
                              &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
                              &lt;artifactId&gt;groovy-eclipse-batch&lt;/artifactId&gt;
                          &lt;/exclusion&gt;
                      &lt;/exclusions&gt;
                  &lt;/dependency&gt;
              &lt;/dependencies&gt;
          &lt;/plugin&gt;
      &lt;/plugins&gt;
      &lt;pluginManagement&gt;
          &lt;plugins&gt;
              &lt;!--This plugin's configuration is used to store Eclipse m2e settings
                  only. It has no influence on the Maven build itself. --&gt;
              &lt;plugin&gt;
                  &lt;groupId&gt;org.eclipse.m2e&lt;/groupId&gt;
                  &lt;artifactId&gt;lifecycle-mapping&lt;/artifactId&gt;
                  &lt;version&gt;1.0.0&lt;/version&gt;
                  &lt;configuration&gt;
                      &lt;lifecycleMappingMetadata&gt;
                          &lt;pluginExecutions&gt;
                              &lt;pluginExecution&gt;
                                  &lt;pluginExecutionFilter&gt;
                                      &lt;groupId&gt;org.codehaus.mojo&lt;/groupId&gt;
                                      &lt;artifactId&gt;build-helper-maven-plugin&lt;/artifactId&gt;
                                      &lt;versionRange&gt;[1.5,)&lt;/versionRange&gt;
                                      &lt;goals&gt;
                                          &lt;goal&gt;add-source&lt;/goal&gt;
                                          &lt;goal&gt;add-test-source&lt;/goal&gt;
                                      &lt;/goals&gt;
                                  &lt;/pluginExecutionFilter&gt;
                                  &lt;action&gt;
                                      &lt;execute /&gt;
                                  &lt;/action&gt;
                              &lt;/pluginExecution&gt;
                              &lt;pluginExecution&gt;
                                  &lt;pluginExecutionFilter&gt;
                                      &lt;groupId&gt;org.apache.maven.plugins&lt;/groupId&gt;
                                      &lt;artifactId&gt;maven-compiler-plugin&lt;/artifactId&gt;
                                      &lt;versionRange&gt;[2.3.1,)&lt;/versionRange&gt;
                                      &lt;goals&gt;
                                          &lt;goal&gt;testCompile&lt;/goal&gt;
                                          &lt;goal&gt;compile&lt;/goal&gt;
                                      &lt;/goals&gt;
                                  &lt;/pluginExecutionFilter&gt;
                                  &lt;action&gt;
                                      &lt;execute /&gt;
                                  &lt;/action&gt;
                              &lt;/pluginExecution&gt;
                              &lt;pluginExecution&gt;
                                  &lt;pluginExecutionFilter&gt;
                                      &lt;groupId&gt;org.codehaus.groovy&lt;/groupId&gt;
                                      &lt;artifactId&gt;groovy-eclipse-compiler&lt;/artifactId&gt;
                                      &lt;versionRange&gt;[2.5.1,)&lt;/versionRange&gt;
                                      &lt;goals&gt;
                                          &lt;goal&gt;testCompile&lt;/goal&gt;
                                          &lt;goal&gt;compile&lt;/goal&gt;
                                      &lt;/goals&gt;
                                  &lt;/pluginExecutionFilter&gt;
                                  &lt;action&gt;
                                      &lt;execute /&gt;
                                  &lt;/action&gt;
                              &lt;/pluginExecution&gt;
                          &lt;/pluginExecutions&gt;
                      &lt;/lifecycleMappingMetadata&gt;
                  &lt;/configuration&gt;
              &lt;/plugin&gt;
          &lt;/plugins&gt;
      &lt;/pluginManagement&gt;
  &lt;/build&gt;
  
  &lt;name&gt;direct-registration&lt;/name&gt;
  &lt;url&gt;http://maven.apache.org&lt;/url&gt;
  
  &lt;properties&gt;
      &lt;gmaven.version&gt;1.3&lt;/gmaven.version&gt;
      &lt;project.build.sourceEncoding&gt;UTF-8&lt;/project.build.sourceEncoding&gt;
  &lt;/properties&gt;
  
  &lt;dependencies&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;junit&lt;/groupId&gt;
          &lt;artifactId&gt;junit&lt;/artifactId&gt;
          &lt;version&gt;4.9&lt;/version&gt;
          &lt;scope&gt;test&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.axis2.wso2&lt;/groupId&gt;
          &lt;artifactId&gt;axis2&lt;/artifactId&gt;
          &lt;version&gt;1.6.0.wso2v4&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.axis2&lt;/groupId&gt;
          &lt;artifactId&gt;axis2-kernel&lt;/artifactId&gt;
          &lt;version&gt;1.6-wso2v4&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.axis2&lt;/groupId&gt;
          &lt;artifactId&gt;axis2&lt;/artifactId&gt;
          &lt;version&gt;1.6.0&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.axis2&lt;/groupId&gt;
          &lt;artifactId&gt;axis2-kernel&lt;/artifactId&gt;
          &lt;version&gt;1.6.0&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.axis2&lt;/groupId&gt;
          &lt;artifactId&gt;axis2-spring&lt;/artifactId&gt;
          &lt;version&gt;1.6.0&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-core&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-beans&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-orm&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-web&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-context&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-webmvc&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework&lt;/groupId&gt;
          &lt;artifactId&gt;spring-asm&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework.security&lt;/groupId&gt;
          &lt;artifactId&gt;spring-security-config&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework.security&lt;/groupId&gt;
          &lt;artifactId&gt;spring-security-web&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework.security&lt;/groupId&gt;
          &lt;artifactId&gt;spring-security-ldap&lt;/artifactId&gt;
          &lt;version&gt;3.0.5.RELEASE&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;org.grails&lt;/groupId&gt;
          &lt;artifactId&gt;grails-spring&lt;/artifactId&gt;
          &lt;version&gt;1.3.7&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;org.hibernate&lt;/groupId&gt;
          &lt;artifactId&gt;hibernate-validator&lt;/artifactId&gt;
          &lt;version&gt;4.2.0.Final&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.hibernate&lt;/groupId&gt;
          &lt;artifactId&gt;hibernate-core&lt;/artifactId&gt;
          &lt;version&gt;3.6.5.Final&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.hibernate&lt;/groupId&gt;
          &lt;artifactId&gt;hibernate-ehcache&lt;/artifactId&gt;
          &lt;version&gt;3.6.5.Final&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.hibernate.javax.persistence&lt;/groupId&gt;
          &lt;artifactId&gt;hibernate-jpa-2.0-api&lt;/artifactId&gt;
          &lt;version&gt;1.0.0.Final&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;postgresql&lt;/groupId&gt;
          &lt;artifactId&gt;postgresql&lt;/artifactId&gt;
          &lt;version&gt;9.0-801.jdbc4&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;javassist&lt;/groupId&gt;
          &lt;artifactId&gt;javassist&lt;/artifactId&gt;
          &lt;version&gt;3.12.1.GA&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;cglib&lt;/groupId&gt;
          &lt;artifactId&gt;cglib&lt;/artifactId&gt;
          &lt;version&gt;2.2.2&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;net.sf.ehcache&lt;/groupId&gt;
          &lt;artifactId&gt;ehcache-core&lt;/artifactId&gt;
          &lt;version&gt;2.4.3&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;com.google.collections&lt;/groupId&gt;
          &lt;artifactId&gt;google-collections&lt;/artifactId&gt;
          &lt;version&gt;1.0&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;commons-lang&lt;/groupId&gt;
          &lt;artifactId&gt;commons-lang&lt;/artifactId&gt;
          &lt;version&gt;2.6&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;commons-io&lt;/groupId&gt;
          &lt;artifactId&gt;commons-io&lt;/artifactId&gt;
          &lt;version&gt;2.0.1&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;commons-codec&lt;/groupId&gt;
          &lt;artifactId&gt;commons-codec&lt;/artifactId&gt;
          &lt;version&gt;1.5&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;joda-time&lt;/groupId&gt;
          &lt;artifactId&gt;joda-time&lt;/artifactId&gt;
          &lt;version&gt;1.6.2&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;commons-logging&lt;/groupId&gt;
          &lt;artifactId&gt;commons-logging&lt;/artifactId&gt;
          &lt;version&gt;1.1.1&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
          &lt;artifactId&gt;slf4j-api&lt;/artifactId&gt;
          &lt;version&gt;1.5.10&lt;/version&gt;
          &lt;scope&gt;compile&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
          &lt;artifactId&gt;slf4j-log4j12&lt;/artifactId&gt;
          &lt;version&gt;1.5.10&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
          &lt;artifactId&gt;jcl-over-slf4j&lt;/artifactId&gt;
          &lt;version&gt;1.5.10&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.slf4j&lt;/groupId&gt;
          &lt;artifactId&gt;jul-to-slf4j&lt;/artifactId&gt;
          &lt;version&gt;1.5.10&lt;/version&gt;
          &lt;scope&gt;runtime&lt;/scope&gt;
          &lt;optional&gt;false&lt;/optional&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;log4j&lt;/groupId&gt;
          &lt;artifactId&gt;log4j&lt;/artifactId&gt;
          &lt;version&gt;1.2.16&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
  
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.geronimo.specs&lt;/groupId&gt;
          &lt;artifactId&gt;geronimo-osgi-locator&lt;/artifactId&gt;
          &lt;version&gt;1.1&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.apache.geronimo.specs&lt;/groupId&gt;
          &lt;artifactId&gt;geronimo-jaxrs_1.1_spec&lt;/artifactId&gt;
          &lt;version&gt;1.0&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;javax.servlet&lt;/groupId&gt;
          &lt;artifactId&gt;servlet-api&lt;/artifactId&gt;
          &lt;version&gt;2.5&lt;/version&gt;
          &lt;scope&gt;provided&lt;/scope&gt;
      &lt;/dependency&gt;
  
      &lt;!-- Project Dependencies --&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;${project.groupId}&lt;/groupId&gt;
          &lt;artifactId&gt;direct-common&lt;/artifactId&gt;
          &lt;version&gt;${project.version}&lt;/version&gt;
      &lt;/dependency&gt;
  &lt;/dependencies&gt;
  &lt;/project&gt;
  </code></pre>