[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ImageJ: OpenJdk has problems with JPEGImageEncoder



On Tue, 23 Sep 2008, David Herron wrote:

com.sun.image.codec.jpeg.JPEGImageEncoder - This is a private class, not a public
class, and we've always maintained freedom to drop/change/modify private classes at
any time.  This was dropped.  This issue is upstream in the openjdk project.

On the OpenJDK 2d-dev mailing list (no URL unfortunately) this package was discussed
in August and Chris Campbell said this:-
      The history (and fate) of those classes is documented here:
      http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6527962

Ahh, many thanks for this explanation.
So we have to foreward this link to ImageJ upstream authors whether they
could migration to Image I/O which is suggested in any way and we might
finally have a really free ImageJ in Debian.  Paolo, would you volunteer
to contact the ImageJ authors (I assume you have contact) or should I take
over this job?

Kind regards

       Andreas.


Andreas Tille wrote:
      Hi,

      the ImageJ image viewer will be now maintained by the Debian Med
      Packaging Team because this viewer is relevant for medical care.
      The package is currently in contrib because it only builds with
      sun-java.  The effort to compile it with openjdk-6-jdk failed with
      the following problem:

      make[1]: Leaving directory `/tmp/buildd/imagej-1.41l'
      cd /tmp/buildd/imagej-1.41l && /usr/lib/jvm/java-6-openjdk/bin/java
      -classpath/usr/share/ant/lib/ant.jar:/usr/share/ant/lib/ant-launcher.jar:/usr/lib/jvm/java-6-op
      enjdk/lib/tools.jar  -Dant.home=/usr/share/ant org.apache.tools.ant.Main
      -Dcompile.debug=true -Dcompile.optimize=true     build
      Buildfile: build.xml

      compile:
          [mkdir] Created dir: /tmp/buildd/imagej-1.41l/build
          [javac] Compiling 258 source files to /tmp/buildd/imagej-1.41l/build
          [javac] /tmp/buildd/imagej-1.41l/ij/measure/CurveFitter.java:19:
      warning: unmappable character for encoding ASCII
          [javac]  *  2008/01/21: Modified to do Gaussian fitting by Stefan
      W??rz (s.woerz at dkfz.de).
          [javac]                                                            ^
          [javac] /tmp/buildd/imagej-1.41l/ij/measure/CurveFitter.java:19:
      warning: unmappable character for encoding ASCII
          [javac]  *  2008/01/21: Modified to do Gaussian fitting by Stefan
      W??rz (s.woerz at dkfz.de).
          [javac]                                                             ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/filter/AVI_Writer.java:54:
      warning: com.sun.image.codec.jpeg.JPEGImageEncoder is Sun proprietary API
      and may be removed in a future release
          [javac]     private JPEGImageEncoder jpegEncoder;
          [javac]             ^
          [javac] /tmp/buildd/imagej-1.41l/ij/io/ImageReader.java:418: warning:
      com.sun.image.codec.jpeg.JPEGCodec is Sun proprietary API and may be
      removed in a future release
          [javac]             BufferedImage bi =
      JPEGCodec.createJPEGDecoder(in).decodeAsBufferedImage();
          [javac]                                ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/AVI_Reader.java:732:
      warning: com.sun.image.codec.jpeg.JPEGCodec is Sun proprietary API and may
      be removed in a future release
          [javac]             bi =
      JPEGCodec.createJPEGDecoder(inputStream).decodeAsBufferedImage();
          [javac]                  ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:41:
      warning: com.sun.image.codec.jpeg.JPEGImageEncoder is Sun proprietary API
      and may be removed in a future release
          [javac]             JPEGImageEncoder encoder =
      JPEGCodec.createJPEGEncoder(f);
          [javac]             ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:41:
      warning: com.sun.image.codec.jpeg.JPEGCodec is Sun proprietary API and may
      be removed in a future release
          [javac]             JPEGImageEncoder encoder =
      JPEGCodec.createJPEGEncoder(f);
          [javac]                                        ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:42:
      warning: com.sun.image.codec.jpeg.JPEGEncodeParam is Sun proprietary API
      and may be removed in a future release
          [javac]             JPEGEncodeParam param =
      encoder.getDefaultJPEGEncodeParam(bi);
          [javac]             ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:45: cannot
      find symbol
          [javac] symbol  : method setHorizontalSubsampling(int,int)
          [javac] location: class com.sun.image.codec.jpeg.JPEGEncodeParam
          [javac]                             param.setHorizontalSubsampling(1,
      1);
          [javac]                                  ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:46: cannot
      find symbol
          [javac] symbol  : method setHorizontalSubsampling(int,int)
          [javac] location: class com.sun.image.codec.jpeg.JPEGEncodeParam
          [javac]                             param.setHorizontalSubsampling(2,
      1);
          [javac]                                  ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:47: cannot
      find symbol
          [javac] symbol  : method setVerticalSubsampling(int,int)
          [javac] location: class com.sun.image.codec.jpeg.JPEGEncodeParam
          [javac]                             param.setVerticalSubsampling(1,
      1);
          [javac]                                  ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:48: cannot
      find symbol
          [javac] symbol  : method setVerticalSubsampling(int,int)
          [javac] location: class com.sun.image.codec.jpeg.JPEGEncodeParam
          [javac]                             param.setVerticalSubsampling(2,
      1);
          [javac]                                  ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:56:
      warning: com.sun.image.codec.jpeg.JPEGEncodeParam is Sun proprietary API
      and may be removed in a future release
          [javac]                                    
      param.setDensityUnit(JPEGEncodeParam.DENSITY_UNIT_DOTS_INCH);
          [javac]                                                          ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/JpegWriter.java:56: cannot
      find symbol
          [javac] symbol  : variable DENSITY_UNIT_DOTS_INCH
          [javac] location: class com.sun.image.codec.jpeg.JPEGEncodeParam
          [javac]                                    
      param.setDensityUnit(JPEGEncodeParam.DENSITY_UNIT_DOTS_INCH);
         
      [javac]                                                                        
      ^
          [javac] /tmp/buildd/imagej-1.41l/ij/plugin/filter/AVI_Writer.java:371:
      warning: com.sun.image.codec.jpeg.JPEGCodec is Sun proprietary API and may
      be removed in a future release
          [javac]             jpegEncoder =
      JPEGCodec.createJPEGEncoder(raOutputStream);
          [javac]                           ^
          [javac] Note: Some input files use or override a deprecated API.
          [javac] Note: Recompile with -Xlint:deprecation for details.
          [javac] 5 errors
          [javac] 10 warnings

      BUILD FAILED


      The packaging stuff for imagej is available at

         svn://svn.debian.org/svn/debian-med/trunk/packages/imagej/trunk/

      and the orig.tar.gz tarball can be obtained via

         make -f debian/rules get-orig-source

      in case you would like to reproduce the problem.  Just try to replace
      the first build depends by openjdk-6-jdk.

      Any hint that might enable us to build imagej using openjdk is really
      appreciated.

      Kind regards

             Andreas.


      PS: If you reply from the debian-java list please make sure that
          you keep at least me personally in CC if you wnt to avoid
          cross-list postings.




--
http://fam-tille.de

Reply to: