JAI设置相当繁琐,涉及多个jars和环境变量。如果我可以将项目添加为常规的Maven依赖项,那么它将大大有助于项目的可移植性。
我使用的POM片段是
<dependency>
<groupId>com.sun.media</groupId>
<artifactId>jai_imageio</artifactId>
<version>1.1</version>
</dependency>
这些错误是
[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
当然,我可以下载并安装这些罐子。问题有两个:
我还没有找到一种方法让这个方法与Maven一起工作。
因为我使用JAI的原因,请参阅使用ImageIO的YCCK图像。
发布于 2009-07-31 21:51:03
我没有看到的是,JAI依赖只需要在运行时得到满足,因此我通过为Tomcat配置JAI来确保生产环境能够访问JAI。
发布于 2011-10-29 17:32:21
为了避免加载jars并安装它们,您可以添加对spring的依赖。因此,稍微更改正常的依赖关系:
<dependency>
<groupId>javax.media.jai</groupId>
<artifactId>com.springsource.javax.media.jai.core</artifactId>
<version>1.1.3</version>
</dependency>
并添加存储库声明:
<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>
现在它应该可以工作了(它使所有sun类都可用javax.media.jai.*)。见这里:
如果需要,还可以添加编解码器依赖项..。
发布于 2012-01-19 09:27:40
jai_core有一个“独立”的实现,不依赖于jai_core。它不需要在JDK和JRE上安装JAI,只需要一个Maven依赖项。
在Maven中,添加它的存储库:
<repository>
<releases />
<snapshots>
<enabled>false</enabled>
</snapshots>
<id>mygrid-repository</id>
<name>myGrid Repository</name>
<url>http://www.mygrid.org.uk/maven/repository</url>
</repository>
和受抚养人:
<dependency>
<groupId>net.java.dev.jai-imageio</groupId>
<artifactId>jai-imageio-core-standalone</artifactId>
<version>1.2-pre-dr-b04-2014-09-13</version>
</dependency>
有关更多细节,请参见其站点
PS是在一个有用的注释之后更新的(来自gitHub的另一个依赖项不需要添加该存储库):
<dependency>
<groupId>com.github.jai-imageio</groupId>
<artifactId>jai-imageio-core</artifactId>
<version>1.3.0</version>
</dependency>
https://stackoverflow.com/questions/1209583
复制相似问题