本文介绍了用于 64 位 Windows 的 JAI 和 ImageIO的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 JAI 和 ImageIO 库中搜索了 64 位窗口,但没有找到任何版本.6-7 年前 Java Bug 跟踪系统上的最后 64 位 win 版本请求.

i searched JAI and ImageIO library for 64 bit windows, but i didn't find any version of these.Last 64 bit win vesion request on Java Bug tracking system 6-7 years ago.

我认为,jai 的开发人员不会发布任何适用于 win64 的版本.:(

I think, jai's developers will not release any version for win64. :(

我的问题是,我们可以从他们的源代码为 64 位 Windows 构建 jai 和 imageio,这可能吗?怎么样?

My question is, can we build jai and imageio from their source for 64bit windows, is it possible? How?

非常感谢...

推荐答案

JAI 和 JAI Image I/O 从源语言的角度来看有两个部分,java 和 C/C++.java部分是免费的(作为免费啤酒),您可以从java.net下载和编译,但这是java源代码,无论架构(x86,x64).

JAI and JAI Image I/O have two parts from source language points of view, java and C/C++. The java part is free (as free beer) and you can download and compile from java.net, but this is java source, no matter architecture (x86, x64).

C/C++ 源代码不是由 SUN 发布的,因此您只能获得 Win32 和其他平台的编译后的 .dll.本源代码未发布的原因有多种,一是SUN使用第三方源代码并有权使用,不得(自由)重新分发.

The C/C++ source code is not released by SUN so you only get the compiled .dll for Win32 and others platforms. This source code is not released due to several reasons, one is SUN uses source from third parties and have the right to use it, not to (freely) redistribute it.

我们三年前就 JAI Image I/O JPEG 12 位编解码器中存在的几个错误与 SUN 联系,他们提供了一些选项.如果这些bug对我们来说是紧急的,我们可以提供C/C++程序员来解决它们,如果我们签署了NDA(保密协议),SUN会为我们提供codecLib的源代码.另一种选择是等待SUN解决问题.我们为分配给错误的 SUN 工程师提供帮助,他在不到一周的时间内解决了问题.

We contact SUN three years ago for several bugs present in JAI Image I/O JPEG 12bit codec and they give some options. If these bugs are urgent for us, we can provide C/C++ programmers for solving them, by SUN providing us the source code of codecLib if we sign a NDA (Non Disclosure Agreement). The other option was wait for SUN to solve the problems. We provide assistance to the SUN engineer assigned to the bugs and he solved in less than a week.

现在情况似乎有所不同,因为 JAI 和相关项目(Image I/O)似乎不再活跃,即没有人在处理它们(新版本、错误修复).

Now the situation seems to be different, as JAI and related projects (Image I/O) seems to be no longer active, i.e. nobody is working on them (new releases, bug fixes).

所以如果你需要新版本,你最终会遇到很多 JAI 问题.

So you eventually will have lot of problems with JAI if you require new versions.

您可以使用 32 位 JRE 在 64 位操作系统(如 Windows 7 x64)中执行使用 JAI 的程序.

You can use the 32bit JRE to execute programs that use JAI in 64bit OS like Windows 7 x64.

很遗憾,您不能在 64 位 JRE 中使用 JAI 或 Image I/O,因为您只能使用纯 Java 中可用的功能,并且在 Image I/O 中丢失了大部分编解码器.

Unfortunately you can't use JAI or Image I/O in a 64bit JRE, as you only can use the functionality available in pure Java and lost most codecs in Image I/O.

另一个问题是您真正需要 JAI 提供什么.JAI 可以使用 100% 纯 Java 实现(软件版本),速度较慢但解决了 x64 的问题.JAI Image I/O 也有一些功能可以由 100% 纯 Java 实现,但其中大多数,如编解码器,需要像 codedLib 这样的原生 dll.

Another question is what you really need from JAI. JAI can be used using the 100% pure Java implementation (software version), slower but solves the problems of x64. JAI Image I/O also have some functionality that can be implemented by 100% pure Java but most of them, like codecs, require native dll like codedLib.

这篇关于用于 64 位 Windows 的 JAI 和 ImageIO的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-29 07:49