carmetal ne se lance pas

Ceux qui souhaitent signaler des erreurs éventuelles du logiciel sont les bienvenus ici (soyez précis svp !).
Post Reply
yanlolot
Posts: 9
Joined: Fri Feb 18, 2011 7:00 pm

carmetal ne se lance pas

Post by yanlolot » Fri Feb 18, 2011 7:27 pm

Bonjour à tous

J'ai installé carmetal sur une debian squeeze/amd64 avec kde4.
carmetal ne se lance quasiment jamais (parfois si). Voici les retours de mes essais en console:

--> un essai sans préciser quelle jvm utiliser (et il prend par défaut java: 1.6.0_18)

Code: Select all

$ carmetal 
bug : createLocalDirectory()
Exception in thread "main" java.lang.NullPointerException
        at eric.JPalette.FollowWindow(JPalette.java:49)
        at eric.JPalette.<init>(JPalette.java:67)
        at eric.JMacrosInspector.<init>(JMacrosInspector.java:61)
        at eric.JNodePopup.<init>(JNodePopup.java:87)
        at eric.CTree.<init>(CTree.java:109)
        at eric.JMacrosList$1.<init>(JMacrosList.java:103)
        at eric.JMacrosList.<init>(JMacrosList.java:103)
        at eric.JZirkelFrameContent$JZmacros.<init>(JZirkelFrameContent.java:340)
        at eric.JZirkelFrameContent.<init>(JZirkelFrameContent.java:76)
        at eric.JZirkelFrame.<init>(JZirkelFrame.java:264)
        at eric.JMacrosTools.NewJZirkelWindow(JMacrosTools.java:105)
        at eric.JMacrosTools.NewWindow(JMacrosTools.java:185)
        at eric.JMacrosTools.FirstRun(JMacrosTools.java:172)
        at rene.zirkel.Zirkel.main(Zirkel.java:172)
        at Zirkel.main(Zirkel.java:107)

Code: Select all

$ carmetal debug
bug : createLocalDirectory()
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at eric.JMacrosTools.RefreshDisplay(JMacrosTools.java:143)
        at eric.JMacrosTools$3.run(JMacrosTools.java:210)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:602)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)                                                                                        
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)                                                                                                    
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)                                                                                                    
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)      
--> un essai en lui demandant d'utiliser le java de sun, version 1.6.0.22:

Code: Select all

$ /usr/lib/jvm/java-6-sun-1.6.0.22/jre/bin/java -jar /usr/share/carmetal/CaRMetal.jar
bug : createLocalDirectory()
Exception in thread "main" java.lang.NullPointerException
        at eric.JPalette.FollowWindow(JPalette.java:49)
        at eric.JPalette.<init>(JPalette.java:67)
        at eric.JMacrosInspector.<init>(JMacrosInspector.java:61)
        at eric.JNodePopup.<init>(JNodePopup.java:87)
        at eric.CTree.<init>(CTree.java:109)
        at eric.JMacrosList$1.<init>(JMacrosList.java:103)
        at eric.JMacrosList.<init>(JMacrosList.java:103)
        at eric.JZirkelFrameContent$JZmacros.<init>(JZirkelFrameContent.java:340)
        at eric.JZirkelFrameContent.<init>(JZirkelFrameContent.java:76)
        at eric.JZirkelFrame.<init>(JZirkelFrame.java:264)
        at eric.JMacrosTools.NewJZirkelWindow(JMacrosTools.java:105)
        at eric.JMacrosTools.NewWindow(JMacrosTools.java:185)
        at eric.JMacrosTools.FirstRun(JMacrosTools.java:172)
        at rene.zirkel.Zirkel.main(Zirkel.java:172)
        at Zirkel.main(Zirkel.java:107)

Code: Select all

$ /usr/lib/jvm/java-6-sun-1.6.0.22/jre/bin/java -jar /usr/share/carmetal/CaRMetal.jar debug
bug : createLocalDirectory()
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at eric.JMacrosTools.RefreshDisplay(JMacrosTools.java:143)
        at eric.JMacrosTools$3.run(JMacrosTools.java:210)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

--> un autre essai avec java-6-openjdk:

Code: Select all

/usr/lib/jvm/java-6-openjdk/jre/bin/java -jar /usr/share/carmetal/CaRMetal.jar
bug : createLocalDirectory()
Exception in thread "main" java.lang.NullPointerException
        at eric.JPalette.FollowWindow(JPalette.java:49)
        at eric.JPalette.<init>(JPalette.java:67)
        at eric.JMacrosInspector.<init>(JMacrosInspector.java:61)
        at eric.JNodePopup.<init>(JNodePopup.java:87)
        at eric.CTree.<init>(CTree.java:109)
        at eric.JMacrosList$1.<init>(JMacrosList.java:103)
        at eric.JMacrosList.<init>(JMacrosList.java:103)
        at eric.JZirkelFrameContent$JZmacros.<init>(JZirkelFrameContent.java:340)
        at eric.JZirkelFrameContent.<init>(JZirkelFrameContent.java:76)
        at eric.JZirkelFrame.<init>(JZirkelFrame.java:264)
        at eric.JMacrosTools.NewJZirkelWindow(JMacrosTools.java:105)
        at eric.JMacrosTools.NewWindow(JMacrosTools.java:185)
        at eric.JMacrosTools.FirstRun(JMacrosTools.java:172)
        at rene.zirkel.Zirkel.main(Zirkel.java:172)
        at Zirkel.main(Zirkel.java:107)

Code: Select all

$ /usr/lib/jvm/java-6-openjdk/jre/bin/java -jar /usr/share/carmetal/CaRMetal.jar debug
bug : createLocalDirectory()                                                                                                                                                        
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException                                                                                                               
        at eric.JMacrosTools.RefreshDisplay(JMacrosTools.java:143)                                                                                                                  
        at eric.JMacrosTools$3.run(JMacrosTools.java:210)                                                                                                                           
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:226)                                                                                                        
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:602)                                                                                                                   
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)                                                                                        
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)                                                                                           
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)                                                                                        
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)                                                                                                    
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)                                                                                                    
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)        
Il faut signaler que :
--> parfois (trés rarement), chacun de ses différents essais fonctionne, et carmetal se lance normalement. Dans le cas où il ne se lance pas, il y a qd même la petite fenêtre qui me donne la version de carmetal, et la version de java utilisée, mais rien de plus.
--> sur mon netbook: squeeze/i686 xfce, je n'ai pas ce pb, et ce sont les mêmes paquets qui sont installés (en version 32 bits bien sûr)
--> qd je lance carmetal en console sans lui préciser la version de java à utiliser, il prend par défaut la 1.6.0_18. Or, cette version n'est pas installée sur mon pc, et pour cause, c'est la 1.6.0_22 qui est dans les dépôts de squeeze
--> tous les paquets ont été installés de manière conventionnelle à l'aide d'aptitude.


Voici les paquets installés qui peuvent aider à la résolution du pb:

Code: Select all

$ dpkg -l |grep sun
ii  sun-java6-bin                            6.22-1                                  Sun Java(TM) Runtime Environment (JRE) 6 (architecture dependent files)
ii  sun-java6-jdk                            6.22-1                                  Sun Java(TM) Development Kit (JDK) 6
ii  sun-java6-jre                            6.22-1                                  Sun Java(TM) Runtime Environment (JRE) 6 (architecture independent files)
ii  sun-java6-plugin                         6.22-1                                  The Java(TM) Plug-in, Java SE 6

Code: Select all

# dpkg -l |grep openjdk
ii  openjdk-6-jdk                            6b18-1.8.3-2+squeeze1                   OpenJDK Development Kit (JDK)
ii  openjdk-6-jre                            6b18-1.8.3-2+squeeze1                   OpenJDK Java runtime, using Hotspot JIT
ii  openjdk-6-jre-headless                   6b18-1.8.3-2+squeeze1                   OpenJDK Java runtime, using Hotspot JIT (headless)
ii  openjdk-6-jre-lib                        6b18-1.8.3-2+squeeze1                   OpenJDK Java runtime (architecture independent libraries)

Code: Select all

# dpkg -l |grep carmetal
ii  carmetal                                 2.9.8.2-1                               dynamic geometry software with highly ergonomic UI


En vous remerciant par avance pour votre aide.

User avatar
alain974
Posts: 150
Joined: Sat Jun 13, 2009 9:08 am
Location: Réunion

Re: carmetal ne se lance pas

Post by alain974 » Sat Feb 19, 2011 7:52 am

yanlolot wrote:parfois (trés rarement), chacun de ses différents essais fonctionne, et carmetal se lance normalement. Dans le cas où il ne se lance pas, il y a qd même la petite fenêtre qui me donne la version de carmetal, et la version de java utilisée, mais rien de plus.
J'ai exactement le même problème, et je ne dois pas être le seul. Ces derniers temps ça m'arrive plus rarement qu'avant mais je dois dire que je lance souvent CaRMetal depuis NetBeans et que je vide souvent le cache Java. C'est donc mon premier conseil (vider le cache Java, pas NetBeans!)

J'ai trois suspects en vue:

1: La OpenJDK m'a toujours parue bugguée, que ce soit avec CaRMetal ou d'autres logiciels (Xlogo par exemple)

2: La version 1.6.0-22 de Sun (ou Oracle) a également mauvaise presse, il semble que beaucoup de problèmes soient résolus en passant à la 1.6.0_23.

3: Le numéro de version de CaRMetal n'arrange rien, n'y a-t-il pas moyen d'avoir une version plus récente, par exemple la toute dernière qui résout un bug sous Windows et peut-être bien aussi sous les autres OS (une histoire de réactivité de la fenêtre)? Sur ce site on peut télécharger la 3.5.4 avec machine Java intégrée, il doit y avoir un moyen de remplacer cete machine par une 64 bits.

4: Un point commun à tous les messages d'erreur est le mot "macros", peut-être faut-il chercher par là, le fichier des macros pourrait être laissé en lecture seule quand l'envie lui en prend?

yanlolot
Posts: 9
Joined: Fri Feb 18, 2011 7:00 pm

Post by yanlolot » Sat Feb 19, 2011 4:10 pm

Salut, et tout d'abord merci pour ton aide.
alain974 wrote:C'est donc mon premier conseil (vider le cache Java, pas NetBeans!)
ça ne marche pas, j'ai tjs le même pb. J'ai vidé le cache de deux manières:

Code: Select all

$rm -rf ~/.java
ou

Code: Select all

$javaws --uninstall
aucune ne règle le pb.


alain974 wrote:La version 1.6.0-22 de Sun (ou Oracle) a également mauvaise presse, il semble que beaucoup de problèmes soient résolus en passant à la 1.6.0_23.
J'ai donc installé la version présente dans les dépôts unstable (la 6.24-1):

Code: Select all

# aptitude install sun-java6-bin/unstable sun-java6-jre/unstable
puis:

Code: Select all

$ /usr/lib/jvm/java-6-sun/jre/bin/java -jar /usr/share/carmetal/CaRMetal.jar
bug : createLocalDirectory()
Exception in thread "main" java.lang.NullPointerException
        at eric.JPalette.FollowWindow(JPalette.java:49)
        at eric.JPalette.<init>(JPalette.java:67)
        at eric.JMacrosInspector.<init>(JMacrosInspector.java:61)
        at eric.JNodePopup.<init>(JNodePopup.java:87)
        at eric.CTree.<init>(CTree.java:109)
        at eric.JMacrosList$1.<init>(JMacrosList.java:103)
        at eric.JMacrosList.<init>(JMacrosList.java:103)
        at eric.JZirkelFrameContent$JZmacros.<init>(JZirkelFrameContent.java:340)
        at eric.JZirkelFrameContent.<init>(JZirkelFrameContent.java:76)
        at eric.JZirkelFrame.<init>(JZirkelFrame.java:264)
        at eric.JMacrosTools.NewJZirkelWindow(JMacrosTools.java:105)
        at eric.JMacrosTools.NewWindow(JMacrosTools.java:185)
        at eric.JMacrosTools.FirstRun(JMacrosTools.java:172)
        at rene.zirkel.Zirkel.main(Zirkel.java:172)
        at Zirkel.main(Zirkel.java:107)

Code: Select all

$ /usr/lib/jvm/java-6-sun/jre/bin/java -jar /usr/share/carmetal/CaRMetal.jar debug
bug : createLocalDirectory()
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at eric.JMacrosTools.RefreshDisplay(JMacrosTools.java:143)
        at eric.JMacrosTools$3.run(JMacrosTools.java:210)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:642)
        at java.awt.EventQueue.access$000(EventQueue.java:85)
        at java.awt.EventQueue$1.run(EventQueue.java:603)
        at java.awt.EventQueue$1.run(EventQueue.java:601)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:612)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Bref, ça ne résoud rien.

alain974 wrote:Le numéro de version de CaRMetal n'arrange rien, n'y a-t-il pas moyen d'avoir une version plus récente, par exemple la toute dernière qui résout un bug sous Windows et peut-être bien aussi sous les autres OS (une histoire de réactivité de la fenêtre)?
Mais malheureusement, c'est la seul dispo dans les dépôts:

Code: Select all

# apt-cache policy carmetal
carmetal:
  Installé : 2.9.8.2-1
  Candidat : 2.9.8.2-1
 Table de version :
 *** 2.9.8.2-1 0
        993 http://ftp.fr.debian.org/debian/ squeeze/main amd64 Packages
        880 http://ftp.fr.debian.org/debian/ unstable/main amd64 Packages
Et je me sens pas me lancer dans une compil. Et je préfère rester avec les paquets des dépôts debian, quitte à attendre qu'une meilleure version apparaisse dans la branche unstable.
Je me demande si l'on peut envoyer un rapport de bug aux développeurs, et si oui, comment ?

yanlolot
Posts: 9
Joined: Fri Feb 18, 2011 7:00 pm

Post by yanlolot » Sat Feb 19, 2011 5:35 pm

J'ai viré la version squeeze de carmetal, téléchargé sur le site la version 3.5.2 (carmetal_3.5.2.debian.1-1_all.deb: rappel, je suis sur une archi 64 bits), l'ai installé:

Code: Select all

dpkg -i carmetal_3.5.2.debian.1-1_all.deb
Et là, aucun message n'apparaît, mais je n'ai pas la fenêtre de carmetal (on dirait qu'elle se "réduit" dans le coin supérieur gauche de l'écran, mais en tout cas, cette "ombre" reste inaccesible). Les tests avec cette version 3.5.2 ont été réalisés avec le java de sun (la 6.24-1), et openjdk:

Code: Select all

$ /usr/lib/jvm/java-6-sun/jre/bin/java -jar /usr/share/carmetal/CaRMetal.jar debug
bug : createLocalDirectory()
Exception in thread "AWT-EventQueue-0" java.lang.IllegalArgumentException: Width (-179) and height (-112) cannot be <= 0
        at java.awt.image.DirectColorModel.createCompatibleWritableRaster(DirectColorModel.java:999)
        at sun.awt.X11GraphicsConfig.createAcceleratedImage(X11GraphicsConfig.java:389)
        at sun.awt.X11.XComponentPeer.createImage(XComponentPeer.java:866)
        at java.awt.Component.createImage(Component.java:3358)
        at java.awt.Component.createImage(Component.java:3355)
        at java.awt.Component.createImage(Component.java:3355)
        at java.awt.Component.createImage(Component.java:3355)
        at java.awt.Component.createImage(Component.java:3355)
        at java.awt.Component.createImage(Component.java:3355)
        at java.awt.Component.createImage(Component.java:3355)
        at rene.zirkel.ZirkelCanvas.paint(ZirkelCanvas.java:1031)
        at rene.zirkel.tools.MoverTool.resetFirstTime(MoverTool.java:318)
        at rene.zirkel.ZirkelFrame.settool(ZirkelFrame.java:614)
        at rene.zirkel.ZirkelFrame.settool(ZirkelFrame.java:601)
        at eric.GUI.palette.JIcon.action(JIcon.java:455)
        at eric.GUI.palette.JIcon.ClicOnMe(JIcon.java:217)
        at eric.GUI.palette.PaletteManager.setSelected_with_clic(PaletteManager.java:558)
        at eric.FileTools$4.run(FileTools.java:362)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:642)
        at java.awt.EventQueue.access$000(EventQueue.java:85)
        at java.awt.EventQueue$1.run(EventQueue.java:603)
        at java.awt.EventQueue$1.run(EventQueue.java:601)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:612)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

yanlolot
Posts: 9
Joined: Fri Feb 18, 2011 7:00 pm

Post by yanlolot » Sat Feb 19, 2011 7:41 pm

Finalement, j'ai craqué, téléchargé les sources, et compilé:

Code: Select all

$unzip -e src.zip
$cd src
$javac Main.java
$ java Main
Exception in thread "main" java.lang.StringIndexOutOfBoundsException: String index out of range: -1
        at java.lang.String.substring(String.java:1949)
        at rene.gui.Global.AppPath(Global.java:856)
        at eric.macros.MacroTools.createLocalDirectory(MacroTools.java:48)
        at Main.mainApplication(Main.java:126)
        at Main.main(Main.java:82)
j'ai tjs la petite fenêtre (avec la version de carmetal et de java) qui s'affiche, puis plus rien.
J'avoue arriver au bout de mes idées...
Si vous en avez, je suis preneur.

[edit] je me demande si l'environnement graphique choisi n'est pas la source des pbs: sur mon netbook avec xfce (ainsi que sur les ordinateurs du lycée debian squeeze/i686 xfce), pas de pbs. Sur mon PC (kde4), pbs, et je note dans ce message :
(...)j'emploie habituellement le gestionnaire de fenêtre ultra léger fvwm2 ; il a suffit que je prenne KDE pour que CaRMetal fonctionne ; c'était simple !(...)
[/edit]
Last edited by yanlolot on Sat Feb 19, 2011 11:15 pm, edited 1 time in total.

yanlolot
Posts: 9
Joined: Fri Feb 18, 2011 7:00 pm

Post by yanlolot » Sat Feb 19, 2011 10:26 pm

J'ai installé sur ce même pc , en plus de kde4, fxce4.
Je démarre sur une session xfce4, et là, tout roule: carmetal se lance à chaque fois sans broncher.
Le pb semble donc venir de l'environnement graphique choisi:
dans mon cas, carmetal tourne sans pb sur tous les pc qui ont xfce4 comme desktop manager, et se lance quasi jamais lorsque c'est kde4.
Debian squeeze/amd64 kde4 (et sun-java6 d'unstable)

yanlolot
Posts: 9
Joined: Fri Feb 18, 2011 7:00 pm

Post by yanlolot » Mon Feb 21, 2011 2:34 am

ça avance: lorsqu'on désactive les effets de bureau dans kde4, carmetal se lance sans problème.
Remarque: si on laisse actif les effets de bureau, avec aucun effet de bureau sélectionné, le problème reste entier. Le seul fait d'aciver les effets créé le problème.

Le problème semble donc venir d'un "conflit" kwin-carmetal.

Remarque: xfce4+compiz ne pose pas de problème.
Debian squeeze/amd64 kde4 (et sun-java6 d'unstable)

yvesC
Posts: 64
Joined: Tue Nov 06, 2007 5:20 pm
Location: Nîmes

Nouvelle version du paquet

Post by yvesC » Wed Mar 09, 2011 11:24 pm

J'ai fait une nouvelle version du deb avec la 3.5.2:
http://www.ycombe.net/debian/last/

ça ne résoudra pas ton problème, mais par contre il utilise le java par défaut (celui que tu choisis avec

Code: Select all

sudo update-alternative --config java
).

Post Reply