Boardverwaltung funktioniert nicht mehr

Hallo zusammen,

ich "basteln" nun ja schon eine Zeitlang mit den ESP8266 und dem Arduino rum... soweit immer alles ok, nun habe ich ein Update der IDE gemacht... und ab da ging gar nichts mehr.

Also einmal die IDE deinstalliert (inkl. aller Verzeichnisse, also auch das unter %localappdata% und unter dem Benutzer. Danach IDE wieder neu installiert mit dem Problem, das es jetzt zwar wieder startet, aber immer bei der Boardverwaltung der Fehler kommt:


java.lang.NullPointerException
java.lang.RuntimeException: java.lang.NullPointerException
at cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onUpdatePressed$1(ContributionManagerUI.java:150)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
at cc.arduino.contributions.packages.ContributionsIndexer.parseIndex(ContributionsIndexer.java:124)
at processing.app.BaseNoGui.initPackages(BaseNoGui.java:484)
at processing.app.Base$9.onIndexesUpdated(Base.java:1376)
at cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onUpdatePressed$1(ContributionManagerUI.java:148)
... 1 more
java.lang.NullPointerException
at cc.arduino.contributions.packages.ContributionsIndexer.parseIndex(ContributionsIndexer.java:124)
at processing.app.BaseNoGui.initPackages(BaseNoGui.java:484)
at processing.app.Base.openBoardsManager(Base.java:1394)
at processing.app.Base$10.actionPerformed(Base.java:1417)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
at java.awt.Component.processMouseEvent(Component.java:6539)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
at java.awt.Component.processEvent(Component.java:6304)
at java.awt.Container.processEvent(Container.java:2239)
at java.awt.Component.dispatchEventImpl(Component.java:4889)
at java.awt.Container.dispatchEventImpl(Container.java:2297)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
at java.awt.Container.dispatchEventImpl(Container.java:2283)
at java.awt.Window.dispatchEventImpl(Window.java:2746)
at java.awt.Component.dispatchEvent(Component.java:4711)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
at java.awt.EventQueue$4.run(EventQueue.java:733)
at java.awt.EventQueue$4.run(EventQueue.java:731)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Es ist egal, welche Version ich Installiere und wie oft ich zwischendurch neu starte. Es funktioniert einfach nicht. Wo ist das Problem? Hat jemand eine Idee???? (und zwar nicht die, bitte einmal den ganzen Rechner neu installieren :slight_smile: )

Du könntest parallel eine portable IDE installieren und mit der probieren. Davon kannst Du mehrere haben.

Gruß Tommy

Eine deiner installierten Libraries oder Cores macht Mist - dummer Weise sagt dir die IDE nicht, welche. Brutale Lösung: alle Libraries löschen (liegen bei mir im Arduino_Sketchbook/libraries). Oder arduino-cli installieren und per commandline cores und libraries upgrade - das sagt dann welche Probleme macht.

Hi,

ich habe seit heute genau das gleich Problem - ich hoffe es ist okay wenn ich mich hier anschließe.

Da ich sowieso meinen Laptop neu installieren wollte dachte ich mir dann ist das Problem bestimmt weg - aber leider nicht.

Wenn ich die IDE das erste Mal starte auf dem frischen System klappt dies ohne Fehlermeldung. Sobald ich die Board Verwaltung öffne erhalte ich nach dem laden des Plattformenindex folgende Fehlermeldung an der gleiche Stelle wo der Ladebalken ist: "java.lang.NullPointerException".

Im Hintergrund in der Konsole wird folgendes ausgegeben:

java.lang.NullPointerException
java.lang.RuntimeException: java.lang.NullPointerException
	at cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onUpdatePressed$1(ContributionManagerUI.java:150)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
	at cc.arduino.contributions.packages.ContributionsIndexer.parseIndex(ContributionsIndexer.java:124)
	at processing.app.BaseNoGui.initPackages(BaseNoGui.java:484)
	at processing.app.Base$9.onIndexesUpdated(Base.java:1381)
	at cc.arduino.contributions.packages.ui.ContributionManagerUI.lambda$onUpdatePressed$1(ContributionManagerUI.java:148)
	... 1 more
java.lang.NullPointerException
	at cc.arduino.contributions.packages.ContributionsIndexer.parseIndex(ContributionsIndexer.java:124)
	at processing.app.BaseNoGui.initPackages(BaseNoGui.java:484)
	at processing.app.Base.openBoardsManager(Base.java:1399)
	at processing.app.Base$10.actionPerformed(Base.java:1422)
	at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:2022)
	at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2348)
	at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:402)
	at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:259)
	at javax.swing.AbstractButton.doClick(AbstractButton.java:376)
	at javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:842)
	at javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:886)
	at java.awt.Component.processMouseEvent(Component.java:6539)
	at javax.swing.JComponent.processMouseEvent(JComponent.java:3324)
	at java.awt.Component.processEvent(Component.java:6304)
	at java.awt.Container.processEvent(Container.java:2239)
	at java.awt.Component.dispatchEventImpl(Component.java:4889)
	at java.awt.Container.dispatchEventImpl(Container.java:2297)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4535)
	at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4476)
	at java.awt.Container.dispatchEventImpl(Container.java:2283)
	at java.awt.Window.dispatchEventImpl(Window.java:2746)
	at java.awt.Component.dispatchEvent(Component.java:4711)
	at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:760)
	at java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.awt.EventQueue$3.run(EventQueue.java:709)
	at java.awt.EventQueue$3.run(EventQueue.java:703)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:84)
	at java.awt.EventQueue$4.run(EventQueue.java:733)
	at java.awt.EventQueue$4.run(EventQueue.java:731)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:74)
	at java.awt.EventQueue.dispatchEvent(EventQueue.java:730)
	at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:205)
	at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
	at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
	at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)

Wenn ich jetzt die IDE schließe und erneut versuche zu starten wird kurz das Ladefenster angezeigt und es passiert nichts mehr.

Die arduino_debug.exe gibt folgende Meldung aus:

C:\Program Files (x86)\Arduino>arduino_debug.exe
Konfiguration wird geladen...
Pakete werden initialisiert...
java.lang.NullPointerException
        at cc.arduino.contributions.packages.ContributionsIndexer.parseIndex(ContributionsIndexer.java:124)
        at processing.app.BaseNoGui.initPackages(BaseNoGui.java:484)
        at processing.app.Base.<init>(Base.java:268)
        at processing.app.Base.main(Base.java:151)

Die IDE startet erst wieder, wenn ich unter %localappdata% den Arduino15 Ordner lösche. Der Boardverwalter produziert dann aber wieder den selben Fehler.

Bei mir ist der der libraries Ordner komplett leer und auch sonst ist noch nicht viel installiert.

Mein Betriebssystem ist Windows 10. Die IDE 1.8.12 und 1.8.9 geben bei den selben Fehler im Boardverwalter raus.

Eine Portable Version habe ich eben runtergeladen und es kommt genau das gleiche Fehlerbild :-/..

Weiß jetzt ehrlich gesagt nicht mehr was ich noch testen kann.

Liebe Grüße,
Björn

Benenne mal den Ordner mit den Einstellungen um, ".arduino15" heißt der in einem echtem OS :slight_smile:

Hey,

das Umbennen des Ordners lässt die IDE wieder startet, aber es wird natürlich wieder der Ordner "Arduino15" angelegt.

Ich habe gerade nochmal etwas rumprobiert. Die Bibiliotheksverwaltung lässt sich ohne Fehler öffnen - es liegt definitiv an der Boardverwaltung.

Sobald der Boardverwalter geöffnet wird ist ein erneutes starten nicht möglich, das installieren von von Boards ist auch nicht möglich - die ganze Suche in dem Verwalter ist nicht mehr funktional.

Rausgefunden habe ich eben, dass man nicht den gesamten Arduino15 Ordner löschen muss. Es reicht wenn man die Datei "package_index.json", die in dem Ordner liegt, löscht. Dann startet die IDE auch wieder.

Hat Windows irgendwas verändert, dass jetzt plötzlich dieser Fehler kommt :confused:

Ich kenne die Ursache nicht, aber nebenan hat es einige erfolgreiche Forschungen von amithlon gegeben.
Bei allen 1.8.x zerlegt der Aufruf des Boardmanagers die package_index.json

Wenn man die (aus einem Backup - was ist das?) wieder herstellt, läuft die ID wieder.

Ich hänge mal meine package_index.json und package_index.json.sig als Attachment ran, falls die jemand benutzen will.

Gruß Tommy

package_index.json.zip (32.7 KB)

Puhh.

Das Problem scheint tiefer zu gehen.
Ich hatte noch ein ganz frisches Backup der .arduino15. Eingespielt. Die 1.18.12 gestartet -> geht !.
Beendet -> neu gestartet -> geht.
Das letzte aktive Projekt wieder gestartet (war ein ESP32-Firebeetle) compiliert. Beendet.
Neustart geht nicht mehr !!
Bin jetzt auf die 1.18.10 zurück. Aber der Wurm steckt noch woanders.
Aber auch bei der ist es so. Sobald ich ein ESP-Project compiliere startet sie danach nicht mehr.
Löschen der package_index.json hilft dann immer, aber immer nur einmal.
Compiliere ich ein Uno oder Megaprojekt passiert nix.

Ich hoffe es kommt bald ein Update. Ich musste ja unbedingt ausprobieren was passiert wenn ich in
den Boardmanager gehe.

Ulli

Also unter Linux zerlegt's 1.8.12 nicht, nur die Paketindizes sind irgendwie nicht mehr konsistent. Mit arduino-cli kann man die Board und Library Indizes korrigieren - vielleicht geht das auch unter Windows.

Also bei mir ist es unter linux !

Ich habe gerade gemerkt das die package_index.json erst beim compilieren wieder aktualisiert wird.
Deshalb startet die IDE auch erst nach dem Compilieren nicht mehr.

Ulli

Probier' mal ob du's mit arduino-cli reparieren kannst

So ich werde heute gar nicht mehr reparieren weil es nicht helfen wird.
Ich habe gerade einfach mal mein (fast) nie benutztes Windows gestartet. Dort habe ich auch die
IDE installiert. Sketchbook per Git auf meinen Linuxstand gebracht.

IDE gestartet (1.8.12) -> nicht in den Boardverwalter gegangen einfach nur auf ESP32 geschaltet das
selbe Project wie unter Linux geladen. Compiliert -> IDE beendet -> kein Neustart möglich !!
Auch hier wird beim Compilieren die package_index.json ersetzt und dann geht es beim nächsten Neustart
nicht mehr. Ist also scheinbar erst heute durch den Upload kaputter package_index.json entstanden.
Ok da sollte die IDE nicht abstürzen. Aber .12 oder .10 ist egal ! Ich hoffe das legt sich einfach im
Laufe der Woche wieder. Sonst muss ich das Dingen halt immer wieder löschen.
Ist ja auch eine Lösung :slight_smile:

Ulli

Gleiches Problem seit gestern hier mit 1.18.11 und 1.18.12 unter MacOS.

nehmt temporär in den Voreinstellungen "Beim Start nach Update suchen" raus, zumindest soll das verhindern, dass das json immer wieder kaputt nachgeladen wird. Zumindest kann ich normal weiterarbeiten.

Viel auch im englsichen Forum: Installation & Troubleshooting - Arduino Forum

Ok, danke. Das funktioniert erst mal.

Ulli

Hallo,

bei mir funktioniert alles nicht. Verdammt ... ich kann es zwar starten (wenn ich immer die jason Datei löschen), allerdings kann ich keine Boards nachladen und gerade die möglichkeit brauche ich, da im "standart" ja keine ESP drin ist.

Also heisst es nur Warten und hoffen...

Wobei meine Frage ist, Betriebsystem (wegen Updates)? Bei der IDE tu ich mich schwer, da ich keine Updates darauf gemacht hatte ....

Oh du Glücklicher :slight_smile: bei mir funktioniert es nicht. Selbst eine Portable die ich noch hatte (1.8.8) funktioniert nicht mehr (Internet hatte ich vorsichtshalber abgeschaltet). Boardverwaltung aufgerufen und schon wieder der Fehler. Starten ging danach auch wieder nicht. Virenscanner und alles andere habe ich auch schon abgeschaltet.

klar, die deaktivierte checkbox vermeidet ja nur den Aufruf beim Start. Wenn du es manuell anstöst ist klar dass der nullpointer wieder kommt.

Probier mal den aktuellen nightly build wenn du unbedingt jetzt die Boardverwaltung brauchst.

Auch mich hat es erwischt!

Aber dank der Tipps hier, hatte ich innerhalb von 2 Minuten wieder eine lauffähige Version und kann weiter arbeiten.
:o :o :o

Danke.

Hab jetzt die Beta drauf und als erstes einen Schock bekommen ...

trojan generickd 41196648

hab es jetzt vorerstin einer VM laufen. Scheint aber eine Falschmeldung zu sein....