Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Versionen Update Nodejs und NPM

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.3k

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    9.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

Versionen Update Nodejs und NPM

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
55 Beiträge 11 Kommentatoren 18.1k Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Jeeper.atJ Offline
    Jeeper.atJ Offline
    Jeeper.at
    schrieb am zuletzt editiert von
    #16

    Hallo,

    Also npm ls npm bringt folgendes:

    Iobroker.core@1.0.0 c:\iobroker

    – (empty)

    Und npm ls npm -g bringt folgendes:

    C:\Users\meinname\Appdata\Roaming\npm

    -- npm@5.8.0

    Ein npm -v zeigt

    5.8.0

    Nur im Admin wird 5.6.0 angezeigt und bei Adapterinstallation auch abgefragt.

    Lg

    Günther

    1 Antwort Letzte Antwort
    0
    • Jeeper.atJ Offline
      Jeeper.atJ Offline
      Jeeper.at
      schrieb am zuletzt editiert von
      #17

      Hat noch jemand einen Tip für mich?

      Lg

      Günther

      1 Antwort Letzte Antwort
      0
      • AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        schrieb am zuletzt editiert von
        #18

        Ein bisschen hacky, aber so hab ich mal ein ähnliches Problem behoben:

        1. Erstelle im ioBroker-Ordner eine Datei mit Namen "test.js" und folgendem Inhalt:

        console.log(process.env.PATH.split(";"))
        

        2. Bearbeite im gleichen Ordner die package.json mit einem Editor. Füge zwischen der öffnenden geschweiften Klammer und der nächsten Zeile folgendes ein:

        "scripts": {
          "find-npm": "node test.js"
        },
        
        

        3. Führe (immer noch im gleichen Ordner) folgendes aus:

        npm run find-npm
        

        Auf der Konsole sollte jetzt eine Liste von Pfaden erscheinen. In irgendeinem davon (der irgendwas mit npm/node zu tun hat) befindet sich deine Version 5.6.0. Am besten postest du den Pfad dann hier, damit im ioBroker eine Ausnahme hinzugefügt werden kann.

        Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

        1 Antwort Letzte Antwort
        0
        • Jeeper.atJ Offline
          Jeeper.atJ Offline
          Jeeper.at
          schrieb am zuletzt editiert von
          #19

          Hallo,

          vielen Dank für die Anleitung.

          Mein Ergebnis:

          c:\ioBroker>npm run find-npm
          
          > iobroker.core@1.0.0 find-npm c:\ioBroker
          > node test.js
          
          [ 'C:\\Users\\schmitzerg\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\npm-lifecycle\\node-gyp-bin',
            'c:\\ioBroker\\node_modules\\.bin',
            'C:\\WINDOWS\\system32',
            'C:\\WINDOWS',
            'C:\\WINDOWS\\System32\\Wbem',
            'C:\\WINDOWS\\System32\\WindowsPowerShell\\v1.0\\',
            'C:\\Program Files (x86)\\Windows Kits\\8.1\\Windows Performance Toolkit\\',
            'C:\\Program Files (x86)\\Common Files\\Acronis\\VirtualFile\\',
            'C:\\Program Files (x86)\\Common Files\\Acronis\\VirtualFile64\\',
            'C:\\Program Files (x86)\\Common Files\\Acronis\\FileProtector\\',
            'C:\\Program Files (x86)\\Common Files\\Acronis\\FileProtector64\\',
            'C:\\Program Files (x86)\\Common Files\\Acronis\\SnapAPI\\',
            'C:\\Program Files\\nodejs\\',
            'C:\\Users\\schmitzerg\\AppData\\Local\\Microsoft\\WindowsApps',
            'C:\\Users\\schmitzerg\\AppData\\Roaming\\npm' ]
          
          c:\ioBroker>
          

          Mir war nun nicht ganz klar wie ich die 5.6.0 finden kann. Ich habe deshalb in jedem Pfad ein npm -v ausgeführt. Leider war jedesmal ein 5.8.0 das Ergebnis. War das richtig oder kann ich die 5.6.0 anders finden?

          lg

          Günther

          1 Antwort Letzte Antwort
          0
          • AlCalzoneA Offline
            AlCalzoneA Offline
            AlCalzone
            Developer
            schrieb am zuletzt editiert von
            #20

            Da vermutlich: c:\ioBroker\node_modules\.bin bzw in einem der node_modules Ordner.

            Befehle, die per NPM ausgeführt werden (darunter iobroker install) haben diesen Ordner in der PATH-Variable, um lokale Binaries ausführen zu können. Wenn du manuell npm ausführst, bekommst du die globale Version. Wahrscheinlich sind da noch Überreste der früheren Abhängigkeit von npm2, die beim Update nicht sauber entfernt wurde und dann ein Update auf 5.6.0 erfahren hat. Alles, was per npm ausgeführt wird, greift dann beim Aufruf von npm auf diese lokale Version zu.

            npm uninstall npm
            npm prune
            
            

            im ioBroker-Ordner könnte das eventuell beheben (ohne Gewähr). Ansonsten mal nach einem Ordner node_modules\npm im ioBroker-Ordner suchen und löschen. Und alles mit Namen "npm" aus dem .bin-Ordner entfernen.

            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

            1 Antwort Letzte Antwort
            0
            • Jeeper.atJ Offline
              Jeeper.atJ Offline
              Jeeper.at
              schrieb am zuletzt editiert von
              #21

              Hallo,

              nach der Deinstallation habe ich ein npm -v ausgeführt. Er findet noch immer die 5.8.0 Das ist gut, weil es die Theorie der 2 Versionen erhärtet.

              Wie erwartet lässt sich IOBroker nun nicht mehr starten weil er die vorhandene Version nicht mehr findet.

              Fehler beim starten vom Admin:

              c:\ioBroker>node node_modules/iobroker.js-controller/iobroker.js start admin.0
              module.js:549
                  throw err;
                  ^
              
              Error: Cannot find module 'c:\ioBroker\node_modules\iobroker.js-controller\iobroker.js'
                  at Function.Module._resolveFilename (module.js:547:15)
                  at Function.Module._load (module.js:474:25)
                  at Function.Module.runMain (module.js:693:10)
                  at startup (bootstrap_node.js:188:16)
                  at bootstrap_node.js:609:3
              
              c:\ioBroker>
              

              Wie kann ich IOBroker nun mitteilen das es da noch eine verwendbare Version gibt oder wie gehe ich weiter vor?

              lg und vielen Dank für die Hilfe.

              Günther

              1 Antwort Letzte Antwort
              0
              • AlCalzoneA Offline
                AlCalzoneA Offline
                AlCalzone
                Developer
                schrieb am zuletzt editiert von
                #22

                @Jeeper.at:

                Wie erwartet lässt sich IOBroker nun nicht mehr starten weil er die vorhandene Version nicht mehr findet. `

                Du würfelst da einiges durcheinander:

                Cannot find module 'c:\ioBroker\node_modules\iobroker.js-controller\iobroker.js'
                

                Die hier genannte Datei wird nicht gefunden, nicht npm. Npm ist das Paketverwaltungstool von NodeJS, mit dem Pakete installiert, deinstalliert und upgedated werden. Zur Ausführung von Programmen wird es NICHT benötigt, wohl aber zur Adapterinstallation per ioBroker. Den Ordner zur PATH-Variable hinzufügen macht auch keinen Sinn, da ist die Installation nämlich schon drin (appdata\…), sonst würde der Befehl "npm -v" nicht funktionieren.

                Die Deinstallation hat wohl einige zu viele Pakete gelöscht. Im Ordner "c:\ioBroker" bitte

                npm install --production
                

                ausführen, bzw. wenn ioBroker danach immer noch nicht startet

                npm install iobroker.js-controller
                

                Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                1 Antwort Letzte Antwort
                0
                • AlCalzoneA Offline
                  AlCalzoneA Offline
                  AlCalzone
                  Developer
                  schrieb am zuletzt editiert von
                  #23

                  @UweRLP:

                  In die path Variable den Ordner von NodeJS eintragen. `

                  Sorry, das ist in diesem Fall Quatsch. Die node-Binary wird ja gefunden, ebenso npm. Die js-Datei von ioBroker aber nicht!

                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                  1 Antwort Letzte Antwort
                  0
                  • Jeeper.atJ Offline
                    Jeeper.atJ Offline
                    Jeeper.at
                    schrieb am zuletzt editiert von
                    #24

                    Alles klar, teste ich am Abend und gebe Rückmeldung.

                    Lg

                    Günther

                    1 Antwort Letzte Antwort
                    0
                    • Jeeper.atJ Offline
                      Jeeper.atJ Offline
                      Jeeper.at
                      schrieb am zuletzt editiert von
                      #25

                      So, letzter Stand:

                      ich musste beide Befehle ausführen.

                      nun wird durch

                      npm start admin.0
                      

                      zwar der admin gestartet, aber aufrufen kann ich ihn deswegen auch nicht. Mit localhost:8081 kommt nichts.

                      Dann habe ich ein

                      iobroker update
                      iobroker upgrade
                      

                      probiert.

                      Es wird angezeigt, das kein einziger Adapter installiert ist.

                      Schön langsam mache ich mir ein wenig Sorgen. :-)

                      lg

                      Günther

                      1 Antwort Letzte Antwort
                      0
                      • Jeeper.atJ Offline
                        Jeeper.atJ Offline
                        Jeeper.at
                        schrieb am zuletzt editiert von
                        #26

                        Zusatzinfo:

                        Da der WAF zu sinken drohte (Konnte ich mit einem selbstgemachten Abendessen abwenden) habe ich nun ein Backup eingespielt.

                        Nun bin ich also wieder auf dem Ausgangsstand. Alles funktioniert, nur das halt 2 NPM Versionen drauf sind.

                        Also falls es Ideen gibt, immer her damit.

                        Vielen Dank

                        Günther

                        1 Antwort Letzte Antwort
                        0
                        • AlCalzoneA Offline
                          AlCalzoneA Offline
                          AlCalzone
                          Developer
                          schrieb am zuletzt editiert von
                          #27

                          @Jeeper.at:

                          nun wird durch

                          npm start admin.0
                          

                          zwar der admin gestartet, aber aufrufen kann ich ihn deswegen auch nicht. Mit localhost:8081 kommt nichts.

                          Dann habe ich ein

                          iobroker update
                          iobroker upgrade
                          ```` `  
                          

                          Und nochmal: "npm …" ist kein Befehl zum BETRIEB des ioBroker, sondern zum INSTALLIEREN von Paketen und Adaptern. Korrekt wäre

                          iobroker start admin.0
                          

                          Hast du nach der Installation denn den ioBroker selbst auch mal gestartet? Also mit

                          iobroker start
                          

                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                          1 Antwort Letzte Antwort
                          0
                          • AlCalzoneA Offline
                            AlCalzoneA Offline
                            AlCalzone
                            Developer
                            schrieb am zuletzt editiert von
                            #28

                            Du könntest jetzt nach Backup nochmal probieren, die lokale npm-Version zu löschen - aber lass "npm prune" weg, das löscht bei dir zu viel.

                            Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                            1 Antwort Letzte Antwort
                            0
                            • Jeeper.atJ Offline
                              Jeeper.atJ Offline
                              Jeeper.at
                              schrieb am zuletzt editiert von
                              #29

                              Hallo, sorry hatte mich verschrieben.

                              Habe den Admin eh mit iobroker Start Admin.0 gestartet.

                              Ja auch iobroker Start habe ich gemacht. Sogar unter Windows Dienste war ich. (Nur bin ich mit da nicht mehr sicher ob sich der Dienst starten ließ)

                              Deinen weiteren Tipp schaue ich mir am Abend an.

                              Danke für die Geduld.

                              1 Antwort Letzte Antwort
                              0
                              • Jeeper.atJ Offline
                                Jeeper.atJ Offline
                                Jeeper.at
                                schrieb am zuletzt editiert von
                                #30

                                Hallo,

                                Leider hat das nichts gebracht. Die beiden Versionen sind noch vorhanden.

                                Frage dazu kann ich eigentlich irgendwie die 5.8.0 aus der Path Variable rausnehmen (oder sonstige verstecken) und dann ein Upgrade durchführen? Dann habe ich zwar noch immer 2 Versionen, aber immerhin 2mal die gute. Oder stelle ich mir das zu einfach vor?

                                Lg

                                Günther

                                1 Antwort Letzte Antwort
                                0
                                • AlCalzoneA Offline
                                  AlCalzoneA Offline
                                  AlCalzone
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #31

                                  Global scheint ja die korrekte Version (5.8.0) installiert zu sein. Den Pfad zur lokalen Version fügt npm beim Aufruf automatisch ein, den kannst du nicht so einfach entfernen. Den müsste ioBroker bei der Befehlsausführung selbst aktiv aus dem Pfad entfernen. Ich hab das auch bei der Erstinstallation schon mal eingebaut, aber das scheint bei dir nicht zu greifen. Komme aktuell auch nicht dazu, das zu optimieren. Vielleicht kommt ja @Bluefox oder @Apollon77 dazu.

                                  Nur um sicher zu gehen, dass wir keinen Geist jagen: Schau mal ob du im ioBroker-Verzeichnis oder Unterordnern im node_modules-Ordner einen Ordner npm findest. Wenn ja, schau in der package.json davon nach, welche Version es ist.

                                  Zusätzlich bitte über die Kommandozeile im ioBroker-Verzeichnis "node" ausführen, dann folgendes eingeben

                                  require.resolve("npm")
                                  
                                  

                                  Es sollte ein Fehler kommen. Danach kannst du den Befehl mit Strg+C, Strg+C beenden.

                                  Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                  1 Antwort Letzte Antwort
                                  0
                                  • Jeeper.atJ Offline
                                    Jeeper.atJ Offline
                                    Jeeper.at
                                    schrieb am zuletzt editiert von
                                    #32

                                    Hallo,

                                    also:

                                    hier das IOBroker Verzeichnis

                                     `Verzeichnis von C:\ioBroker
                                    
                                    16.04.2018  19:10` 
                                    
                                    <dir> `.
                                    16.04.2018  19:10` 
                                    
                                    <dir> `..
                                    18.03.2018  14:44                20 .npmrc
                                    27.03.2018  20:26               984 5.8.0
                                    08.10.2017  09:44` 
                                    
                                    <dir> `backups
                                    08.04.2018  16:53` 
                                    
                                    <dir> `cache
                                    21.03.2016  21:20                74 controller.js
                                    14.04.2018  02:53` 
                                    
                                    <dir> `daemon
                                    21.03.2016  21:05` 
                                    
                                    <dir> `etc
                                    21.03.2016  21:20               892 install.js
                                    18.03.2018  14:44                74 iobroker
                                    18.03.2018  15:04` 
                                    
                                    <dir> `iobroker-data
                                    21.03.2016  21:20                67 iobroker.bat
                                    18.03.2018  14:44                63 iobroker.cmd
                                    16.04.2018  02:14    
                                    
                                    <dir>          log
                                    16.04.2018  19:10    
                                    
                                    <dir>          node_modules
                                    16.04.2018  19:10                93 package.json
                                    12.04.2018  19:42                70 package.json.bak
                                    21.03.2016  21:20             1.655 serviceIoBroker.bat
                                    12.04.2018  19:40                40 test.js
                                    21.03.2016  21:20               436 uninstall.js
                                                  12 Datei(en),          4.468 Bytes
                                                   9 Verzeichnis(se), 959.502.278.656 Bytes frei
                                    
                                    Im Ordner node_modules gibt es einen Ordner der folgendermaßen heißt. Keinen Ordner der nur NPM heißt.
                                    

                                    npm-run-path

                                    Inhalt der package.json:
                                    

                                    {
                                    "_from": "npm-run-path@^2.0.0",
                                    "_id": "npm-run-path@2.0.2",
                                    "_inBundle": false,
                                    "_integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
                                    "_location": "/npm-run-path",
                                    "_phantomChildren": {},
                                    "_requested": {
                                    "type": "range",
                                    "registry": true,
                                    "raw": "npm-run-path@^2.0.0",
                                    "name": "npm-run-path",
                                    "escapedName": "npm-run-path",
                                    "rawSpec": "^2.0.0",
                                    "saveSpec": null,
                                    "fetchSpec": "^2.0.0"
                                    },
                                    "_requiredBy": [
                                    "/execa"
                                    ],
                                    "_resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
                                    "_shasum": "35a9232dfa35d7067b4cb2ddf2357b1871536c5f",
                                    "_spec": "npm-run-path@^2.0.0",
                                    "_where": "C:\ioBroker\node_modules\execa",
                                    "author": {
                                    "name": "Sindre Sorhus",
                                    "email": "sindresorhus@gmail.com",
                                    "url": "sindresorhus.com"
                                    },
                                    "bugs": {
                                    "url": "https://github.com/sindresorhus/npm-run-path/issues"
                                    },
                                    "bundleDependencies": false,
                                    "dependencies": {
                                    "path-key": "^2.0.0"
                                    },
                                    "deprecated": false,
                                    "description": "Get your PATH prepended with locally installed binaries",
                                    "devDependencies": {
                                    "ava": "",
                                    "xo": "
                                    "
                                    },
                                    "engines": {
                                    "node": ">=4"
                                    },
                                    "files": [
                                    "index.js"
                                    ],
                                    "homepage": "https://github.com/sindresorhus/npm-run-path#readme",
                                    "keywords": [
                                    "npm",
                                    "run",
                                    "path",
                                    "package",
                                    "bin",
                                    "binary",
                                    "binaries",
                                    "script",
                                    "cli",
                                    "command-line",
                                    "execute",
                                    "executable"
                                    ],
                                    "license": "MIT",
                                    "name": "npm-run-path",
                                    "repository": {
                                    "type": "git",
                                    "url": "git+https://github.com/sindresorhus/npm-run-path.git"
                                    },
                                    "scripts": {
                                    "test": "xo && ava"
                                    },
                                    "version": "2.0.2",
                                    "xo": {
                                    "esnext": true
                                    }
                                    }

                                    
                                    Der Befehl unter node bringt folgenden Fehler:
                                    ```
                                    <code>> require.resolve("npm")
                                    Error: Cannot find module 'npm'
                                        at Function.Module._resolveFilename (module.js:547:15)
                                        at Function.resolve (internal/module.js:18:19)[code][/code]</code>
                                    ```
                                    
                                    lg Günther</dir>
                                    
                                    </dir>` </dir>
                                    
                                    </dir>
                                    
                                    </dir>
                                    
                                    </dir>
                                    
                                    </dir>
                                    
                                    </dir>
                                    
                                    </dir>
                                    
                                    ```
                                    1 Antwort Letzte Antwort
                                    0
                                    • AlCalzoneA Offline
                                      AlCalzoneA Offline
                                      AlCalzone
                                      Developer
                                      schrieb am zuletzt editiert von
                                      #33

                                      Ok, und findest du in "node_modules.bin" eine Datei "npm"?

                                      Bzgl. deines Ordnerinhalts verwundert mich etwas die Datei 5.8.0 - möglicherweise npm mit falschem Befehl installiert?

                                      Und die controller.js - aber die scheint ein Überbleibsel von anno dazumal zu sein.

                                      Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                      1 Antwort Letzte Antwort
                                      0
                                      • Jeeper.atJ Offline
                                        Jeeper.atJ Offline
                                        Jeeper.at
                                        schrieb am zuletzt editiert von
                                        #34

                                        Hallo,

                                        Nein im node_modules.bin befindet sich keine Datei mit dem Namen npm.

                                        Bezüglich der 32 und der 64 Bit Version? Wie könnte ich das checken? In der Systemsteuerung findet man nichts dazu.

                                        Lg

                                        Günther

                                        1 Antwort Letzte Antwort
                                        0
                                        • AlCalzoneA Offline
                                          AlCalzoneA Offline
                                          AlCalzone
                                          Developer
                                          schrieb am zuletzt editiert von
                                          #35

                                          @Jeeper.at:

                                          Nein im node_modules.bin befindet sich keine Datei mit dem Namen npm. `

                                          Dann sollte zumindest keine lokale Version installiert sein. Ich bin ehrlich gesagt etwas ratlos…

                                          Warum `sudo` böse ist: https://forum.iobroker.net/post/17109

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate
                                          FAQ Cloud / IOT
                                          HowTo: Node.js-Update
                                          HowTo: Backup/Restore
                                          Downloads
                                          BLOG

                                          789

                                          Online

                                          32.5k

                                          Benutzer

                                          81.7k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe