clazzes.org OSGi bundle pom.xml checklist

distribution management

(replace sketch with your project user name):

  <distributionManagement>
    <repository>
      <id>org.clazzes-sketch-dist</id>
      <name>clazzes.org repository</name>
      <url>scpexe://sketch@maven.clazzes.org/var/www/htdocs/maven.clazzes.org</url>
    </repository>
    <snapshotRepository>
        <id>org.clazzes.snapshots-sketch-dist</id>
        <name>clazzes.org snapshot repository</name>
        <url>scpexe://sketch@maven.clazzes.org/var/www/htdocs/maven-snapshots.clazzes.org</url>
    </snapshotRepository>
  </distributionManagement>

utf-8 in properties

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  </properties>

wagon-ssh extension

  <build>
    <extensions>
      <!-- Enabling the use of scpexe:// URLs -->
      <extension>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-ssh-external</artifactId>
        <version>1.0-beta-6</version>
      </extension>
    </extensions>
   ...
  </build>

remoteOBR and prefixUrl in maven-bundle-plugin

(replace sketch with your project user name):

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.felix</groupId>
        <artifactId>maven-bundle-plugin</artifactId>
        <version>2.1.0</version>
        <extensions>true</extensions>
        <configuration>
          <remoteOBR>org.clazzes-sketch-dist</remoteOBR>
          <prefixUrl>http://maven.clazzes.org</prefixUrl>
          <instructions>
            <Bundle-SymbolicName>${project.artifactId}</Bundle-SymbolicName>
            ...
          </instructions>
        </configuration>
      </plugin>
      ...
    </plugins>
  </build>

TODO bundle naming policy