[Java] Runt perfect maar niet in een *.jar

Pagina: 1
Acties:

  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Gek probleem en ik ben bang dat niemand erop komt.

Ik heb een libary die ik gebruik voor het decompressen van PNG files (www.sixlegs.com) en die werkt lekker. Deze zet ik dan om naar een Macromedia Flash file (swf) (deze ondersteunt ook alpha channels , en optimised de PNG als dat kan). Goed. Leuk.

Nu package ik deze in een jar (mijn 1 filetje) en dan alle classes van die libary. Maar als ik hem dan 'run' (java -jar) dan stopt ie op een functie in AWT : PixelGrabber.grabPixels(). Deze 'zegt' dat er maar 1 pixel is. Neemt ook 0 cpu in. MaW doet dus ineens niets meer.

In beide gevallen zijn de input files hetzelfde alsook de VM - het is alleen dat de ene in een jar zit en de andere niet.

WEER een bug in java? (ik heb getest met 3 VM's).

edit:
nu blijkt dat JBuilder toch niet de zelfde VM gebruikt. Het lukt wel met de SDK VM maar niet de JRE... agh k*t java ook. Iemand een ideetje waarom het wel met de SDK zou gaan maar niet met de JRE?

edit2:
tja ik laad nu de PNG in met de javax.imageio en daarmee lukt het dus wel. Heb de 'author' van de andere PNG al gecontacteerd. Nu is me convertorke nog maar 26Kb.

[ Voor 27% gewijzigd door hobbit_be op 28-06-2003 18:03 ]


  • PommeFritz
  • Registratie: Augustus 2001
  • Laatst online: 10-07 04:13

PommeFritz

...geen friet

hobbit_be schreef op 28 June 2003 @ 16:41: Iemand een ideetje waarom het wel met de SDK zou gaan maar niet met de JRE?
SDK heeft meer classes (o.a. de javac compiler erbij). Andere JIT? Andere java versie? Verklaart je probleem nog steeds niet trouwens...

FireFox - neem het web in eigen hand


  • hobbit_be
  • Registratie: November 2002
  • Laatst online: 04-07-2025
Nee ik heb het probleem ook omzeilt - het doet net hetzelfde met de nieuwe 1.4.2 final dus het is vast een weird bug in the PNG Decoder die ik gebruikte, met de ImageIO gaat alles goed (die laatste doet het ook gewoon goed alhoewel ik reports las dat ie vaak de mist inging met PNG files - dus niet tegengekomen). Een van de 4000 bugs die "gefixt" zijn zullen vast code hebben gebroken die op die bugs 'vertrouwde'.

Advies gebruik gewoon ImageIO lib van JRE (dwz dat je dan zelf moet gaan nachecken of je iets met een 8bit index moet compressen of niet - maar dat moest ik zowieso doen voor het optimisen van de filesize). Topic mag dicht want het is 'too tricky' ... Toch altijd gek die Java Bugs - tis een taaltje waar je het niet verwacht (hoewel de fout hier vast een programming error is)... met c/c++ had ik vast direct begonnen met alles te ontleden :) Toch bedankt Pomme ;)