Parallels arrays et Maven

Un précieux lecteur m’a informé, suite à mes deux derniers articles sur les Parallel Arrays (ici et la), que les JARs de la JSR-166 étaient disponibles via Maven. Bonne nouvelle, et simplification pour leur installation. Ca doit même être une bonne nouvelle pour les aficionados de Gradle et Ivy !

Pour l’utiliser, il faut déclarer le repository Codehaus dans son POM Maven.

<repositories>
   <repository>
      <id>codehaus-milestone</id>
      <name>codehaus-milestone</name>
      <url>http://repository.codehaus.org</url>
      <snapshots>
         <enabled>false</enabled>
      </snapshots>
   </repository>
</repositories>

Les dépendances sont alors les suivantes.

<dependency>
   <groupId>org.codehaus.jsr166-mirror</groupId>
   <artifactId>jsr166y</artifactId>
   <version>1.7.0</version>
</dependency>

<dependency>
   <groupId>org.codehaus.jsr166-mirror</groupId>
   <artifactId>extra166y</artifactId>
   <version>1.7.0</version>
</dependency>

Ce que je trouve curieux, c’est que le JAR jsr166y ne soit pas déclaré en dépendance du JAR extra166y dans le POM. Rappelons que les classes de extray166y (dont ParallelArray) dépendent d’une version de la classe ForkJoinPool qui est celle de jsr166y, et non pas celle de l’API Java 7. Si vous voulez utiliser les parallel arrays par ce biais, il vous faudra donc déclarer ces deux JARs en dépendance de votre projet.

Référénces

L’annonce de la création de ce miroir : http://www.russel.org.uk/blog/2011-03-03-14-57.

La page du miroir, hébergé par Codehaushttp://xircles.codehaus.org/projects/jsr166-mirror.