Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Entwicklung
    4. [Entwicklungs-Tool] ioBroker dev-server

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [Entwicklungs-Tool] ioBroker dev-server

    This topic has been deleted. Only users with topic management privileges can see it.
    • Acgua
      Acgua @OliverIO last edited by

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

      ich habe den dev-server nun auch mal probiert.
      habe aber ein problem mit dem setzten der breakpoints
      ziel ist es einen adapter zu debuggen mit F5 aus visual code
      das aufsetzen hat funktioniert.
      auch der live-reload beim erstellen einer admin/jsonConfig.json
      Wenn ich aber nun den Adapter direkt debuggen will,
      bspw einen breakpoint direkt auf die erste Zeile des Adapters
      werden nur die breakpoints erkannt, wenn ich die in der adapterdatei unterhalb des .dev-server/default/node_modules verzeichnis liegen.

      @alcalzone said in [Entwicklungs-Tool] ioBroker dev-server:

      Wenns damit auch nicht geht, am besten mal deine Erkenntnisse in einem Issue sammeln.

      Bei mir selbes Problem (lokale Installation unter Windows), daher habe ich nun ein Issue aufgemacht und alles da gesammelt:

      Issue #286 - VSCode (Win10): Debugging/Breakpoints nur unterhalb .dev-server/

      D 1 Reply Last reply Reply Quote 0
      • D
        dirkhe Developer @Acgua last edited by

        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

        OliverIO AlCalzone 2 Replies Last reply Reply Quote 1
        • OliverIO
          OliverIO @dirkhe last edited by

          @dirkhe
          ich probiere es mal aus

          1 Reply Last reply Reply Quote 0
          • AlCalzone
            AlCalzone Developer @dirkhe last edited by

            @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 1 Reply Last reply Reply Quote 0
            • D
              dirkhe Developer @AlCalzone last edited by

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

              AlCalzone 1 Reply Last reply Reply Quote 0
              • AlCalzone
                AlCalzone Developer @dirkhe last edited by

                @dirkhe Was genau meinst du mit zickt rum?

                D 1 Reply Last reply Reply Quote 0
                • D
                  dirkhe Developer @AlCalzone last edited by

                  @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 Reply Quote 1
                  • s.bormann
                    s.bormann Most Active last edited by

                    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

                    Schmakus 1 Reply Last reply Reply Quote 0
                    • Schmakus
                      Schmakus Developer @s.bormann last edited by

                      @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.bormann 1 Reply Last reply Reply Quote 0
                      • s.bormann
                        s.bormann Most Active @Schmakus last edited by

                        @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.

                        Schmakus 1 Reply Last reply Reply Quote 0
                        • Schmakus
                          Schmakus Developer @s.bormann last edited by

                          @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.bormann 1 Reply Last reply Reply Quote 0
                          • s.bormann
                            s.bormann Most Active @Schmakus last edited by

                            @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 Reply Quote 0
                            • D
                              dirkhe Developer @s.bormann last edited by

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

                              OliverIO 1 Reply Last reply Reply Quote 0
                              • OliverIO
                                OliverIO @dirkhe last edited by 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.bormann 1 Reply Last reply Reply Quote 0
                                • s.bormann
                                  s.bormann Most Active @OliverIO last edited by

                                  @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

                                  Schmakus 2 Replies Last reply Reply Quote 0
                                  • Schmakus
                                    Schmakus Developer @s.bormann last edited by

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

                                    1 Reply Last reply Reply Quote 0
                                    • Schmakus
                                      Schmakus Developer @s.bormann last edited by

                                      @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.bormann OliverIO 2 Replies Last reply Reply Quote 0
                                      • s.bormann
                                        s.bormann Most Active @Schmakus last edited by

                                        @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 Reply Quote 0
                                        • OliverIO
                                          OliverIO @Schmakus last edited by

                                          @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

                                          1 Reply Last reply Reply Quote 0
                                          • afuerhoff
                                            afuerhoff Developer last edited by

                                            @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 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            372
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter entwicklung tools
                                            12
                                            49
                                            6767
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo