在linux环境下,jdk1.4.2_02
代码如下
public static boolean zoomImage(String infile, String outfile, int x, int y) {
boolean ret = false;
// String imgPath = "";
//System.out.println("infile--->" + infile);
//System.out.println("outfile-->" + outfile);
File _file = new File(infile);
String cmdstr = null;
try {
if (_file.exists()) {
Image src = ImageIO.read(_file);
int imgX = src.getWidth(null);
int imgY = src.getHeight(null);
int w = x;
int h = y;
if (imgX * y > imgY * x) {
h = (imgY * x) / imgX;
} else {
w = (imgX * y) / imgY;
}
System.out.println(imgX + " x " + imgY + "-->" + w + " x " + h);
if (imgX >= x || imgY >= y) {
cmdstr = "/usr/bin/convert -sample " + w + "x" + h + " "
+ infile + " " + outfile;
//System.out.println("cmdstr========>"+cmdstr);
Runtime.getRuntime().exec(cmdstr);
ret = true;
}
}
} catch (IOException e) {
e.printStackTrace();
}
// return cmdstr;
return ret;
}程序在Image src = ImageIO.read(_file);这个地方抛异常,不能运行。异常信息如下:Exception in thread "main" java.lang.ExceptionInInitializerError
at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.5.0.0)
at _Jv_ResolvePoolEntry(java.lang.Class, int) (/usr/lib/libgcj.so.5.0.0)
at com.sun.imageio.plugins.jpeg.JPEGImageReaderSpi.JPEGImageReaderSpi() (Unknown Source)
at javax.imageio.spi.IIORegistry.registerStandardSpis() (Unknown Source)
at javax.imageio.spi.IIORegistry.IIORegistry() (Unknown Source)
at javax.imageio.spi.IIORegistry.getDefaultInstance() (Unknown Source)
at javax.imageio.ImageIO.<clinit>() (Unknown Source)
at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.5.0.0)
at _Jv_ResolvePoolEntry(java.lang.Class, int) (/usr/lib/libgcj.so.5.0.0)
at ImageT.zoomImage(java.lang.String, java.lang.String, int, int) (Unknown Source)
at GetSinaRss.tSQL(java.util.HashMap, java.lang.String[], java.lang.String[]) (Unknown Source)
at GetSinaRss.dataToDB(java.util.ArrayList) (Unknown Source)
at GetSinaRss.main(java.lang.String[]) (Unknown Source)
Caused by: java.lang.UnsupportedOperationException: profile not implemented
at java.awt.color.ICC_Profile.getNumComponents() (/usr/lib/libgcj.so.5.0.0)
at java.awt.color.ICC_ColorSpace.ICC_ColorSpace(java.awt.color.ICC_Profile) (/usr/lib/libgcj.so.5.0.0)
at java.awt.color.ColorSpace.getInstance(int) (/usr/lib/libgcj.so.5.0.0)
at com.sun.imageio.plugins.jpeg.JPEG.<clinit>() (Unknown Source)
at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.5.0.0)
...12 more这个程序是直接通过root登录后用java执行的。在同样的环境下,在jsp程序中,resin2.0.5的环境下没有问题。环境变量设置如下:
CLASSPATH=.:/usr/local/j2sdk1.4.2_02/lib:/usr/local/j2sdk1.4.2_02/jre/lib:/usr/local/resin/lib:/usr/local/resin/classes:/chroot/www/WEB-INF/classes/:/usr/local/resin/lib/wap0.jar:/usr/local/resin/lib/j2ee.jar:/usr/local/j2sdk1.4.2_02/lib/tools.jar:/usr/local/resin/lib/jsdk23.jar:/usr/local/resin/lib/utils.jar:/usr/local/resin/lib/classes12.zip:./:./WEB-INF/classes/:/usr/local/resin/lib/jmagick.jar:/usr/local/resin/lib/gif.jar:/usr/local/resin/lib/image.jar:/usr/local/j2sdk1.4.2_02/jre/lib/rt.jar:/usr/local/resin/lib/utils.jar:/usr/local/j2sdk1.4.2_02/jre/lib/jsse.jar:/usr/local/j2sdk1.4.2_02/jre/lib/sunrsasign.jar:/usr/local/j2sdk1.4.2_02/jre/lib/jce.jar:/usr/local/j2sdk1.4.2_02/jre/lib/plugin.jar:/usr/local/j2sdk1.4.2_02/jre/lib/charsets.jar谢谢,请高手指点!
代码如下
public static boolean zoomImage(String infile, String outfile, int x, int y) {
boolean ret = false;
// String imgPath = "";
//System.out.println("infile--->" + infile);
//System.out.println("outfile-->" + outfile);
File _file = new File(infile);
String cmdstr = null;
try {
if (_file.exists()) {
Image src = ImageIO.read(_file);
int imgX = src.getWidth(null);
int imgY = src.getHeight(null);
int w = x;
int h = y;
if (imgX * y > imgY * x) {
h = (imgY * x) / imgX;
} else {
w = (imgX * y) / imgY;
}
System.out.println(imgX + " x " + imgY + "-->" + w + " x " + h);
if (imgX >= x || imgY >= y) {
cmdstr = "/usr/bin/convert -sample " + w + "x" + h + " "
+ infile + " " + outfile;
//System.out.println("cmdstr========>"+cmdstr);
Runtime.getRuntime().exec(cmdstr);
ret = true;
}
}
} catch (IOException e) {
e.printStackTrace();
}
// return cmdstr;
return ret;
}程序在Image src = ImageIO.read(_file);这个地方抛异常,不能运行。异常信息如下:Exception in thread "main" java.lang.ExceptionInInitializerError
at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.5.0.0)
at _Jv_ResolvePoolEntry(java.lang.Class, int) (/usr/lib/libgcj.so.5.0.0)
at com.sun.imageio.plugins.jpeg.JPEGImageReaderSpi.JPEGImageReaderSpi() (Unknown Source)
at javax.imageio.spi.IIORegistry.registerStandardSpis() (Unknown Source)
at javax.imageio.spi.IIORegistry.IIORegistry() (Unknown Source)
at javax.imageio.spi.IIORegistry.getDefaultInstance() (Unknown Source)
at javax.imageio.ImageIO.<clinit>() (Unknown Source)
at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.5.0.0)
at _Jv_ResolvePoolEntry(java.lang.Class, int) (/usr/lib/libgcj.so.5.0.0)
at ImageT.zoomImage(java.lang.String, java.lang.String, int, int) (Unknown Source)
at GetSinaRss.tSQL(java.util.HashMap, java.lang.String[], java.lang.String[]) (Unknown Source)
at GetSinaRss.dataToDB(java.util.ArrayList) (Unknown Source)
at GetSinaRss.main(java.lang.String[]) (Unknown Source)
Caused by: java.lang.UnsupportedOperationException: profile not implemented
at java.awt.color.ICC_Profile.getNumComponents() (/usr/lib/libgcj.so.5.0.0)
at java.awt.color.ICC_ColorSpace.ICC_ColorSpace(java.awt.color.ICC_Profile) (/usr/lib/libgcj.so.5.0.0)
at java.awt.color.ColorSpace.getInstance(int) (/usr/lib/libgcj.so.5.0.0)
at com.sun.imageio.plugins.jpeg.JPEG.<clinit>() (Unknown Source)
at java.lang.Class.initializeClass() (/usr/lib/libgcj.so.5.0.0)
...12 more这个程序是直接通过root登录后用java执行的。在同样的环境下,在jsp程序中,resin2.0.5的环境下没有问题。环境变量设置如下:
CLASSPATH=.:/usr/local/j2sdk1.4.2_02/lib:/usr/local/j2sdk1.4.2_02/jre/lib:/usr/local/resin/lib:/usr/local/resin/classes:/chroot/www/WEB-INF/classes/:/usr/local/resin/lib/wap0.jar:/usr/local/resin/lib/j2ee.jar:/usr/local/j2sdk1.4.2_02/lib/tools.jar:/usr/local/resin/lib/jsdk23.jar:/usr/local/resin/lib/utils.jar:/usr/local/resin/lib/classes12.zip:./:./WEB-INF/classes/:/usr/local/resin/lib/jmagick.jar:/usr/local/resin/lib/gif.jar:/usr/local/resin/lib/image.jar:/usr/local/j2sdk1.4.2_02/jre/lib/rt.jar:/usr/local/resin/lib/utils.jar:/usr/local/j2sdk1.4.2_02/jre/lib/jsse.jar:/usr/local/j2sdk1.4.2_02/jre/lib/sunrsasign.jar:/usr/local/j2sdk1.4.2_02/jre/lib/jce.jar:/usr/local/j2sdk1.4.2_02/jre/lib/plugin.jar:/usr/local/j2sdk1.4.2_02/jre/lib/charsets.jar谢谢,请高手指点!
解决方案 »
- 使用了2个开源类库,这两个类库都需要dom4j做支持,但需求的版本不一样,怎么处理?
- Java 进度条 显示出问题
- 请问,哪里有关于java3d1.5的API可以下载
- jtable 限定cell输入个数和类型的问题
- 求javax.media包
- 怎样把服务器上的文件上传到FTP
- Class.forName执行问题
- httruly(核桃) 及各位大侠请再看
- 在DOS下输入的字符是按什么方式编码的,是unicode吗?我用的是2000,谢谢
- main()函数前为何要加static?
- string的一个实例的输出
- 怎么把bufferedimage转成 gif文件,用JAI(Java Advanced Imaging API)
windows下可以不?