NEWS
[Aufruf] ioBroker Adapter-Creator testen
-
Hast du deinen ioBroker und Dev Umgebung auf dem selben PC?
Eslint ist hier im ioBroker node Module sind anwesend es muss global sein.
Ich habe ein Dev System auf Linux und entwickle auf Windows bzw Mac den creator hab ich dann auch ausserhalb des ioBroker roots installiert
Sent from my iPhone using Tapatalk
-
Hallo,
nein mein Produktivsystem läuft da nicht. Ich hab das vorher im root Verzeichnis schon ausprobiert, leider das selbe.
root@ioBroker-DEV:~# npm link eslint /root/node_modules/eslint -> /usr/lib/node_modules/eslint
root@ioBroker-DEV:~# npx @iobroker/create-adapter npx: Installierte 69 in 4.964s Cannot find module 'eslint'
Bin halt auch kein gelernter Entwickler, aber ich würde gerne den Creater mal testen um eventuell ein neuen Adapter zu erstellen.
-
Kommando zurück, jetzt geht es…..
-
Kommando zurück, jetzt geht es….. `
Super, was war los?
Sent from my iPhone using Tapatalk
-
Ich habe nochmals im root Verzeichnis
npm install -g eslint
eingegeben, danach ging es. :roll:
-
Ah ok also global installiert.
Na dan viel Spass und wenn du Fragen hast immer her damit
Sent from my iPhone using Tapatalk
-
Soweit so gut erstmal….hat dann alles soweit problemlos geklappt.
-
Ich habe nochmals im root Verzeichnis
npm install -g eslint
eingegeben, danach ging es. :roll: `
Irgendwas ist da aber faul. ESLint ist eine Abhängigkeit des Creators und sollte eigentlich beim Aufruf von npx mit im temporären Verzeichnis installiert werden.
Was sagt "npx -v"?
-
Das habe ich mir ja ursprünglich auch gedacht, aber dann kam die Meldung, und ich habe es daraufhin versucht nach zu installieren.
-
-
Verdammt, ich hab das gleiche Problem :roll:
Wird zügig gefixt
Edit: v1.4.0 ist draußen.
-
Verdammt, ich hab das gleiche Problem :roll:
Wird zügig gefixt
Edit: v1.4.0 ist draußen. `
Joo, jetzt geht es, danke…...
-
Hallo,
ich als Linux-Noob bräuchte mal ein paar Hinweise … :roll:
In welchem Verzeichnis muss ich die Befehle denn absetzen? Ich habe es an mehreren Stellen versucht und erhalte immer die Meldung "npx: Installierte 170 in 31.111s" und "Unexpected token function"
Ist Node 8 Voraussetzung? Derzeit habe ich noch eine 6er Version am Laufen.
-
-
Ich habe node 8 und 10 benutzt.
Könntest du Mal eine höhere node Version probieren FSV wissen wir ob es an 6 liegt
Sent from my iPhone using Tapatalk
-
So, ich hab jetzt auf Node 8 geupgraded und es läuft.
Jetzt stellt sich mir aber immer noch die Frage, wohin ich sinnvollerweise installiere. Vorerst hab ich mich mal für home/pi entschieden. Aber könnte ich die Dateien theoretisch nicht auch gleich unter opt/iobroker/node_modules ablegen?
-
Nein!
Im ioBroker musst du das npm packacke installieren ..
Also Adapter erstellen, Dan auf der console npm pack
Die ZIP Datei mit npm i >File< installieren
Danach ist er in node_modules anwesend inklusief alle dependency und kannst du Main.js darin weiter ändern
Sent from my iPhone using Tapatalk
-
Nochmal etwas ausführlicher:
Die erste Installation (sofern du nicht den Umweg über Github nehmen willst) kannst du auf dem Ziel-Host ausführen, indem du:
1. im Dev-Ordner den Adapter verpackst: npm pack
2. die resultierende Datei auf den Host lädst
3. in /opt/iobroker diese Datei installierst: npm i name-der-datei.tar.gz
Alle weiteren Updates kannst du einfach per Copy&Paste ins Host-Verzeichnis durchführen (/opt/iobroker/node_modules/iobroker.adaptername).
Je nach veränderten Dateien kann "iobroker upload" nötig sein. Ein Neustart des Adapters in jedem Fall.
-
Ok, ich hab den "Adapter-Dummy" wie gesagt unter home/pi abgelegt. Gemäß deiner Anleitung habe ich ihn anschließend dort gepackt, per FTP nach opt/iobroker/node_modules kopiert und dort dann mit npm i >File< installiert.
Das wirft mir allerdings folgende Warnungen aus:
! npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.vis-jssor/package.json'
! npm WARN grunt-contrib-clean@0.6.0 requires a peer of grunt@~0.4.0 but none is installed. You must install peer dependencies yourself.
! npm WARN grunt-contrib-copy@0.8.2 requires a peer of grunt@>=0.4.0 but none is installed. You must install peer dependencies yourself.
! npm WARN grunt-http@1.6.0 requires a peer of grunt@~0.4.1 but none is installed. You must install peer dependencies yourself .
! npm WARN grunt-replace@0.9.3 requires a peer of grunt@>=0.4.0 but none is installed. You must install peer dependencies your self.Daher habe ich Grunt noch einmal explizit lokal installiert: npm install grunt –save-dev
Ein zweiter Durchlauf von npm i >File< scheint nun funktioniert zu haben.
-
Nachdem der Adapter im Verzeichnis node_modules hinterlegt war, tauchte er auch wie erhofft im Admin-Interface auf. Ich habe dann (über die Konsole) eine Instanz angelegt und kann diese wiederum im Admin-Interface auch sehen. Ein Klick bringt mich dann zum VIS-Editor. Dort sehe ich aber leider kein neues Widget. Bin ich auf dem Holzweg oder müsste da nicht wenigstens ein rudimentäres neues Widget zu sehen sein? In der entsprechenden HTML-Datei scheint ja zumindest etwas derartiges hinterlegt zu sein.
Sorry für das ganze Unwissen … :oops: