Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Entwicklung
  4. [Entwicklungs-Tool] ioBroker dev-server

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    3.6k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    1.1k

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.5k

[Entwicklungs-Tool] ioBroker dev-server

Scheduled Pinned Locked Moved Entwicklung
adapter entwicklungtools
49 Posts 12 Posters 10.1k Views 19 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • D dirkhe

    Ich habe das gleiche Problem unter Linux, Folgendermassen funktioniert es bei mir:

    Terminal 1

    dev-server run
    

    Terminal 2

    node --inspect=0.0.0.0:9229 .dev-server/default/node_modules/<Adapter-name>/ --logs --force
    
    

    In VS code launch.json

    {
      "version": "0.2.0",
      "configurations": [
        {
          "type": "node",
          "request": "attach",
          "name": "attach to ioBroker-Adapter",
          "address": "127.0.0.1",
          "port": 9229,
          "localRoot": "${workspaceFolder}",
          "remoteRoot": "${workspaceFolder}/.dev-server/default/node_modules/${workspaceFolderBasename}",
          "smartStep": true,
          "skipFiles": [
            "<node_internals>/**"
          ]
        }
    }
    

    Wichtig! Bei Verwendung von workspaceFolderBasename muß das Quellverzeichnis klein geschrieben werden, also nicht ioBroker.Xxx sondern iobroker.xxx

    Ich habe gerade festgestellt, dass auch dev-server watch funtioniert und dann ohne Terminal 2 direkt attach der o.g. config aufzurufen

    AlCalzoneA Offline
    AlCalzoneA Offline
    AlCalzone
    Developer
    wrote on last edited by
    #32

    @dirkhe sagte in [Entwicklungs-Tool] ioBroker dev-server:

    Ich habe gerade festgestellt, dass auch dev-server watch funtioniert und dann ohne Terminal 2 direkt attach der o.g. config aufzurufen

    Gehen breakpoints im ursprünglichen Code (nicht in .dev-server) dann auch?

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

    D 1 Reply Last reply
    0
    • AlCalzoneA AlCalzone

      @dirkhe sagte in [Entwicklungs-Tool] ioBroker dev-server:

      Ich habe gerade festgestellt, dass auch dev-server watch funtioniert und dann ohne Terminal 2 direkt attach der o.g. config aufzurufen

      Gehen breakpoints im ursprünglichen Code (nicht in .dev-server) dann auch?

      D Offline
      D Offline
      dirkhe
      Developer
      wrote on last edited by
      #33

      @alcalzone ja, bei mir zickt die anzeige der punkte ein bisschen rum, aber anhalten tut er und dann kann man auch ganz normal debuggen.

      AlCalzoneA 1 Reply Last reply
      0
      • D dirkhe

        @alcalzone ja, bei mir zickt die anzeige der punkte ein bisschen rum, aber anhalten tut er und dann kann man auch ganz normal debuggen.

        AlCalzoneA Offline
        AlCalzoneA Offline
        AlCalzone
        Developer
        wrote on last edited by
        #34

        @dirkhe Was genau meinst du mit zickt rum?

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

        D 1 Reply Last reply
        0
        • AlCalzoneA AlCalzone

          @dirkhe Was genau meinst du mit zickt rum?

          D Offline
          D Offline
          dirkhe
          Developer
          wrote on last edited by
          #35

          @alcalzone wenn man einen bp setzt, wird er rot und links in der liste der breakpoints angezeigt, wenn man dann einen 2. Gesetzt hat, wird der teilweise nicht angezeigt, beim 3. werden die dann wieder angezeigt. Habe ich jetzt aber nicht auf den dev server geschoben, sondern auf vc. Aber angehalten hat er immer korrekt.

          1 Reply Last reply
          1
          • s.bormannS Offline
            s.bormannS Offline
            s.bormann
            Most Active
            wrote on last edited by
            #36

            Hallo, habe den dev-server jetzt auch laufen. So weit klappt es. Änderungen im admin-Verzeichnis (z.B. index_m.html) werden sofort wirksam. Allerdings erkennt er bei mir Änderungen im web-Verzeichnis leider nicht. Kann man das irgendwo aktivieren?
            Danke und Grüße

            SchmakusS 1 Reply Last reply
            0
            • s.bormannS s.bormann

              Hallo, habe den dev-server jetzt auch laufen. So weit klappt es. Änderungen im admin-Verzeichnis (z.B. index_m.html) werden sofort wirksam. Allerdings erkennt er bei mir Änderungen im web-Verzeichnis leider nicht. Kann man das irgendwo aktivieren?
              Danke und Grüße

              SchmakusS Offline
              SchmakusS Offline
              Schmakus
              Developer
              wrote on last edited by
              #37

              @s-bormann wo befindet sich dein web verzeichnis? Hot reload funktioniert nur mit der index_m.html und index_m.js.
              In manchen fällen, wenn neue Dateien angelegt wurden, muss erstmalig "dev-server upload" ausgeführt werden.

              Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

              s.bormannS 1 Reply Last reply
              0
              • SchmakusS Schmakus

                @s-bormann wo befindet sich dein web verzeichnis? Hot reload funktioniert nur mit der index_m.html und index_m.js.
                In manchen fällen, wenn neue Dateien angelegt wurden, muss erstmalig "dev-server upload" ausgeführt werden.

                s.bormannS Offline
                s.bormannS Offline
                s.bormann
                Most Active
                wrote on last edited by
                #38

                @schmakus sagte in [Entwicklungs-Tool] ioBroker dev-server:

                @s-bormann wo befindet sich dein web verzeichnis? Hot reload funktioniert nur mit der index_m.html und index_m.js.
                In manchen fällen, wenn neue Dateien angelegt wurden, muss erstmalig "dev-server upload" ausgeführt werden.

                Hallo,
                das web-Verzeichnis befindet sich direkt im Adapter-Ordner (so wie der admin-Ordner auch). Es müsste nach iobroker-data/files/iqontrol gemappt werden.

                SchmakusS 1 Reply Last reply
                0
                • s.bormannS s.bormann

                  @schmakus sagte in [Entwicklungs-Tool] ioBroker dev-server:

                  @s-bormann wo befindet sich dein web verzeichnis? Hot reload funktioniert nur mit der index_m.html und index_m.js.
                  In manchen fällen, wenn neue Dateien angelegt wurden, muss erstmalig "dev-server upload" ausgeführt werden.

                  Hallo,
                  das web-Verzeichnis befindet sich direkt im Adapter-Ordner (so wie der admin-Ordner auch). Es müsste nach iobroker-data/files/iqontrol gemappt werden.

                  SchmakusS Offline
                  SchmakusS Offline
                  Schmakus
                  Developer
                  wrote on last edited by
                  #39

                  @s-bormann hat der Inhalt des web-ordners direkt etwas mit der admin config zu tun? wenn ja, sollte der web ordner nicht unterhalb von admin angelegt werden?
                  Ich habe die Erfahrung gemacht, dass das hot reload nur mit der index_m.html funktioniert. alles andere muss über dev-server upload erfolgen.
                  Jedoch wird der adapter immer neu gestartet, sollte sich etwas an einer Datei oberhalb vom admin ordner ändern. also z.b. der main.js oder sonstigen code files unter z.b. lib, etc.

                  Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                  s.bormannS 1 Reply Last reply
                  0
                  • SchmakusS Schmakus

                    @s-bormann hat der Inhalt des web-ordners direkt etwas mit der admin config zu tun? wenn ja, sollte der web ordner nicht unterhalb von admin angelegt werden?
                    Ich habe die Erfahrung gemacht, dass das hot reload nur mit der index_m.html funktioniert. alles andere muss über dev-server upload erfolgen.
                    Jedoch wird der adapter immer neu gestartet, sollte sich etwas an einer Datei oberhalb vom admin ordner ändern. also z.b. der main.js oder sonstigen code files unter z.b. lib, etc.

                    s.bormannS Offline
                    s.bormannS Offline
                    s.bormann
                    Most Active
                    wrote on last edited by
                    #40

                    @schmakus Hi, der web-folder enthält Dateien, die mit dem web-Adapter als webseite zur Verfügung gestellt werden. Konkret geht es um iQontrol, eine Visualisierung. Hier liegen alle Dateien des Front-Ends im www-Folder.

                    D 1 Reply Last reply
                    0
                    • s.bormannS s.bormann

                      @schmakus Hi, der web-folder enthält Dateien, die mit dem web-Adapter als webseite zur Verfügung gestellt werden. Konkret geht es um iQontrol, eine Visualisierung. Hier liegen alle Dateien des Front-Ends im www-Folder.

                      D Offline
                      D Offline
                      dirkhe
                      Developer
                      wrote on last edited by
                      #41

                      irgendwo müsste ja konfiguriert sein, was "gewatcht" wird, vlt kann man da ja den www folder hinzufügen?

                      OliverIOO 1 Reply Last reply
                      0
                      • D dirkhe

                        irgendwo müsste ja konfiguriert sein, was "gewatcht" wird, vlt kann man da ja den www folder hinzufügen?

                        OliverIOO Offline
                        OliverIOO Offline
                        OliverIO
                        wrote on last edited by OliverIO
                        #42

                        @dirkhe

                        das müsste package.json, Abschnitt files sein
                        Der build wird durch das tool rimraf unterstützt
                        Die detailanweisungen wie der build (zumindest für den adapter) zu erfolgen hat steht im package
                        https://www.npmjs.com/package/@iobroker/adapter-dev

                        tiefer bin ich in die funktionsweise nicht eingestiegen.
                        ich mach das halt immer manuell

                        für mich ist nur der adapter und die adminoberfläche unterstützt anderes nicht

                        Meine Adapter und Widgets
                        TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                        Links im Profil

                        s.bormannS 1 Reply Last reply
                        0
                        • OliverIOO OliverIO

                          @dirkhe

                          das müsste package.json, Abschnitt files sein
                          Der build wird durch das tool rimraf unterstützt
                          Die detailanweisungen wie der build (zumindest für den adapter) zu erfolgen hat steht im package
                          https://www.npmjs.com/package/@iobroker/adapter-dev

                          tiefer bin ich in die funktionsweise nicht eingestiegen.
                          ich mach das halt immer manuell

                          für mich ist nur der adapter und die adminoberfläche unterstützt anderes nicht

                          s.bormannS Offline
                          s.bormannS Offline
                          s.bormann
                          Most Active
                          wrote on last edited by
                          #43

                          @oliverio sagte in [Entwicklungs-Tool] ioBroker dev-server:

                          @dirkhe

                          das müsste package.json, Abschnitt files sein
                          Der build wird durch das tool rimraf unterstützt
                          Die detailanweisungen wie der build (zumindest für den adapter) zu erfolgen hat steht im package
                          https://www.npmjs.com/package/@iobroker/adapter-dev

                          tiefer bin ich in die funktionsweise nicht eingestiegen.
                          ich mach das halt immer manuell

                          für mich ist nur der adapter und die adminoberfläche unterstützt anderes nicht

                          Sieht bei mir so aus:

                          "files": [
                              "admin/",
                              "!admin/i18n/",
                              "img/",
                              "lib/",
                              "www/",
                              "LICENSE",
                              "main.js",
                              "io-package.json",
                              "package-lock.json"
                            ],
                          

                          Da steht ja www mit drin, klappt aber leider trotzdem nicht.

                          Habe jetzt ein vs-code-Plugin gefunden: fsdeploy. Damit kann ich erreichen, dass das www-Verzeichnis bei Änderungen geuploaded wird - mit diesem Umweg klappt es gut.

                          Denke trotzdem, dass das der dev-server selbst erledigen sollte, vielleicht ist es ja eine Anregung für die Entwickler.

                          Danke für Eure Hilfe!

                          VG

                          SchmakusS 2 Replies Last reply
                          0
                          • s.bormannS s.bormann

                            @oliverio sagte in [Entwicklungs-Tool] ioBroker dev-server:

                            @dirkhe

                            das müsste package.json, Abschnitt files sein
                            Der build wird durch das tool rimraf unterstützt
                            Die detailanweisungen wie der build (zumindest für den adapter) zu erfolgen hat steht im package
                            https://www.npmjs.com/package/@iobroker/adapter-dev

                            tiefer bin ich in die funktionsweise nicht eingestiegen.
                            ich mach das halt immer manuell

                            für mich ist nur der adapter und die adminoberfläche unterstützt anderes nicht

                            Sieht bei mir so aus:

                            "files": [
                                "admin/",
                                "!admin/i18n/",
                                "img/",
                                "lib/",
                                "www/",
                                "LICENSE",
                                "main.js",
                                "io-package.json",
                                "package-lock.json"
                              ],
                            

                            Da steht ja www mit drin, klappt aber leider trotzdem nicht.

                            Habe jetzt ein vs-code-Plugin gefunden: fsdeploy. Damit kann ich erreichen, dass das www-Verzeichnis bei Änderungen geuploaded wird - mit diesem Umweg klappt es gut.

                            Denke trotzdem, dass das der dev-server selbst erledigen sollte, vielleicht ist es ja eine Anregung für die Entwickler.

                            Danke für Eure Hilfe!

                            VG

                            SchmakusS Offline
                            SchmakusS Offline
                            Schmakus
                            Developer
                            wrote on last edited by
                            #44

                            @s-bormann Dann erstelle doch ein Issue auf GitHub, damit dies nicht untergeht und der Entwickler es prüfen kann.

                            Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                            1 Reply Last reply
                            0
                            • s.bormannS s.bormann

                              @oliverio sagte in [Entwicklungs-Tool] ioBroker dev-server:

                              @dirkhe

                              das müsste package.json, Abschnitt files sein
                              Der build wird durch das tool rimraf unterstützt
                              Die detailanweisungen wie der build (zumindest für den adapter) zu erfolgen hat steht im package
                              https://www.npmjs.com/package/@iobroker/adapter-dev

                              tiefer bin ich in die funktionsweise nicht eingestiegen.
                              ich mach das halt immer manuell

                              für mich ist nur der adapter und die adminoberfläche unterstützt anderes nicht

                              Sieht bei mir so aus:

                              "files": [
                                  "admin/",
                                  "!admin/i18n/",
                                  "img/",
                                  "lib/",
                                  "www/",
                                  "LICENSE",
                                  "main.js",
                                  "io-package.json",
                                  "package-lock.json"
                                ],
                              

                              Da steht ja www mit drin, klappt aber leider trotzdem nicht.

                              Habe jetzt ein vs-code-Plugin gefunden: fsdeploy. Damit kann ich erreichen, dass das www-Verzeichnis bei Änderungen geuploaded wird - mit diesem Umweg klappt es gut.

                              Denke trotzdem, dass das der dev-server selbst erledigen sollte, vielleicht ist es ja eine Anregung für die Entwickler.

                              Danke für Eure Hilfe!

                              VG

                              SchmakusS Offline
                              SchmakusS Offline
                              Schmakus
                              Developer
                              wrote on last edited by
                              #45

                              @s-bormann um was für Dateitypen handelt es sich denn? Habe aktuell die Info aus der DEV Gruppe, dass nur js/ts Dateien gewatched werden.

                              Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                              s.bormannS OliverIOO 2 Replies Last reply
                              0
                              • SchmakusS Schmakus

                                @s-bormann um was für Dateitypen handelt es sich denn? Habe aktuell die Info aus der DEV Gruppe, dass nur js/ts Dateien gewatched werden.

                                s.bormannS Offline
                                s.bormannS Offline
                                s.bormann
                                Most Active
                                wrote on last edited by
                                #46

                                @schmakus html, js und css files. Aber auch die index.js wurde nicht deployed.
                                Ich habe es jetzt in vs code mit dem plugin fsdeploy gelöst, hier kann man source und target verzeichnisse angeben, die dann entsprechend synchron gehalten werden. Werde trotzdem ein issue eröffnen, vielleicht hilft es ja anderen.
                                Danke und VG!!

                                1 Reply Last reply
                                0
                                • SchmakusS Schmakus

                                  @s-bormann um was für Dateitypen handelt es sich denn? Habe aktuell die Info aus der DEV Gruppe, dass nur js/ts Dateien gewatched werden.

                                  OliverIOO Offline
                                  OliverIOO Offline
                                  OliverIO
                                  wrote on last edited by
                                  #47

                                  @schmakus
                                  ja, scheint sieht so aus.
                                  der files Ordner sorgt dafür, das die Ordner zwar beobachtet werden und dann der entsprechende builder aufgerufen wird.
                                  der builder kümmert sich aber nur um js und ts dateien

                                  Meine Adapter und Widgets
                                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                  Links im Profil

                                  1 Reply Last reply
                                  0
                                  • afuerhoffA Offline
                                    afuerhoffA Offline
                                    afuerhoff
                                    Developer
                                    wrote on last edited by
                                    #48

                                    @UncleSam
                                    Hallo, kann es sein, dass der Befehl "dev-server update" den npm pack Befehl nicht ausführt um ein tgz file zu erzeugen. Ich bekomme folgenden Fehler:

                                    npm ERR! code ENOENT
                                    npm ERR! syscall open
                                    npm ERR! path /home/afuerhoff/ioBroker.fb-checkpresence/iobroker.fb-checkpresence-1.1.26.tgz
                                    npm ERR! errno -2
                                    npm ERR! enoent ENOENT: no such file or directory, open '/home/afuerhoff/ioBroker.fb-checkpresence/iobroker.fb-checkpresence-1.1.26.tgz'
                                    npm ERR! enoent This is related to npm not being able to find a file.
                                    npm ERR! enoent 
                                    

                                    Wenn ich vorher selber npm pack ausführe funktioniert alles.

                                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                    P 1 Reply Last reply
                                    0
                                    • afuerhoffA afuerhoff

                                      @UncleSam
                                      Hallo, kann es sein, dass der Befehl "dev-server update" den npm pack Befehl nicht ausführt um ein tgz file zu erzeugen. Ich bekomme folgenden Fehler:

                                      npm ERR! code ENOENT
                                      npm ERR! syscall open
                                      npm ERR! path /home/afuerhoff/ioBroker.fb-checkpresence/iobroker.fb-checkpresence-1.1.26.tgz
                                      npm ERR! errno -2
                                      npm ERR! enoent ENOENT: no such file or directory, open '/home/afuerhoff/ioBroker.fb-checkpresence/iobroker.fb-checkpresence-1.1.26.tgz'
                                      npm ERR! enoent This is related to npm not being able to find a file.
                                      npm ERR! enoent 
                                      

                                      Wenn ich vorher selber npm pack ausführe funktioniert alles.

                                      P Offline
                                      P Offline
                                      pdbjjens
                                      wrote on last edited by
                                      #49

                                      @afuerhoff @UncleSam
                                      Ich habe dasselbe Problem.

                                      PS C:\iob-dev\ioBroker.frontier_silicon> dev-server update force
                                      Using profile name "force"
                                      Using adapter name "frontier_silicon"
                                      Updating everything...
                                      C:\iob-dev\ioBroker.frontier_silicon\.dev-server\force> npm update --loglevel error
                                      npm ERR! code ENOENT
                                      npm ERR! syscall open
                                      npm ERR! path C:\iob-dev\ioBroker.frontier_silicon\iobroker.frontier_silicon-0.1.1.tgz
                                      npm ERR! errno -4058
                                      npm ERR! enoent ENOENT: no such file or directory, open 'C:\iob-dev\ioBroker.frontier_silicon\iobroker.frontier_silicon-0.1.1.tgz'
                                      npm ERR! enoent This is related to npm not being able to find a file.
                                      npm ERR! enoent
                                      
                                      npm ERR! A complete log of this run can be found in:
                                      npm ERR!     C:\Users\Jens\AppData\Local\npm-cache\_logs\2023-09-13T12_28_23_535Z-debug-0.log
                                      index.js update [profile]
                                      
                                      Update ioBroker and its dependencies to the latest versions
                                      
                                      Options:
                                            --version  Show version number                                                       [boolean]
                                        -t, --temp     Temporary directory where the dev-server data will be located
                                                                                                         [string] [default: ".dev-server"]
                                            --help     Show help                                                                 [boolean]
                                      
                                      Error: Command failed: npm update --loglevel error
                                          at checkExecSyncError (node:child_process:885:11)
                                          at Object.execSync (node:child_process:957:15)
                                          at DevServer.execSync (C:\Users\Jens\AppData\Roaming\npm\node_modules\@iobroker\dev-server\dist\index.js:1315:19)
                                          at DevServer.update (C:\Users\Jens\AppData\Roaming\npm\node_modules\@iobroker\dev-server\dist\index.js:286:14) 
                                          at async Object.handler (C:\Users\Jens\AppData\Roaming\npm\node_modules\@iobroker\dev-server\dist\index.js:99:129) {
                                        status: 4294963238,
                                        signal: null,
                                        output: [ null, null, null ],
                                        pid: 8868,
                                        stdout: null,
                                        stderr: null
                                      }
                                      

                                      Gibt es dazu schon eine Lösung? (npm pack habe ich bisher nicht probiert).
                                      Ein entsprechendes issue zum dev-server habe ich auf github nicht gefunden.
                                      Bevor ich eins aufmache, möchte ich hier nachfragen. Womöglich handelt es sich ja um einen bekannten Fehler oder einen Bedienfehler meinerseits.

                                      1 Reply Last reply
                                      0
                                      Reply
                                      • Reply as topic
                                      Log in to reply
                                      • Oldest to Newest
                                      • Newest to Oldest
                                      • Most Votes


                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      720

                                      Online

                                      32.7k

                                      Users

                                      82.4k

                                      Topics

                                      1.3m

                                      Posts
                                      Community
                                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                      ioBroker Community 2014-2025
                                      logo
                                      • Login

                                      • Don't have an account? Register

                                      • Login or register to search.
                                      • First post
                                        Last post
                                      0
                                      • Home
                                      • Recent
                                      • Tags
                                      • Unread 0
                                      • Categories
                                      • Unreplied
                                      • Popular
                                      • GitHub
                                      • Docu
                                      • Hilfe