The JAI setup is quite tedious, involving multiple jars and environment variables. It would aid the project's portability quite a lot if I could add it as a regular Maven dependency.
The POM snippet I'm using is
<dependency>
<groupId>com.sun.media</groupId>
<artifactId>jai_imageio</artifactId>
<version>1.1</version>
</dependency>
and the errors are
[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to resolve artifact.
Missing:
----------
1) com.sun.media:jai_imageio:jar:1.1
2) javax.media:jai_core:jar:1.1.3
I can, of course, download and install those jars. The problem is twofold:
I have not found a way to make this work with Maven.
See Reading JCS_YCCK images using ImageIO for the reason I'm using JAI.
To avoid donwloading the jars and installing them you can add a dependency on the spring repo. So change the normal dependency slightly:
<dependency>
<groupId>javax.media.jai</groupId>
<artifactId>com.springsource.javax.media.jai.core</artifactId>
<version>1.1.3</version>
</dependency>
and add a repository declaration:
<repository>
<id>com.springsource.repository.bundles.external</id>
<name>SpringSource Enterprise Bundle Repository - External Bundle Releases</name>
<url>http://repository.springsource.com/maven/bundles/external</url>
</repository>
And it should now work (it makes all the sun classes available javax.media.jai.*). See here:
You can also add the codec dependency if necessary...