docs: fix cannot finde module 'which'
This commit is contained in:
@@ -1,2 +1,2 @@
|
||||
// /config/appVersion
|
||||
export const APP_VERSION = "1.1.265";
|
||||
export const APP_VERSION = "1.1.266";
|
||||
|
||||
BIN
docs/troubleshooting/error-which-module.png
Normal file
BIN
docs/troubleshooting/error-which-module.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 65 KiB |
30
docs/troubleshooting/missing-which-module.md
Normal file
30
docs/troubleshooting/missing-which-module.md
Normal file
@@ -0,0 +1,30 @@
|
||||
# ❌ Fehler: Cannot find module 'which'
|
||||
|
||||
## 🧭 Kontext
|
||||
|
||||
Beim Starten der App mit nodeMapService(Windows Dienst) oder "npm start" nach dem ohne
|
||||
`package-lock.json`-Datei trat folgender Fehler auf: 
|
||||
|
||||
```
|
||||
Error: Cannot find module 'which'
|
||||
```
|
||||
|
||||
Dies bedeutet, dass die Bibliothek `which` im `node_modules`-Verzeichnis fehlt, obwohl sie
|
||||
möglicherweise früher vorhanden war.
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Lösung
|
||||
|
||||
Da `which` nicht mehr im aktuellen `node_modules` verzeichnis vorhanden war:
|
||||
|
||||
1. **Altes funktionierendes Projekt geöffnet**
|
||||
→ Dort war die Bibliothek im `node_modules`-Verzeichnis noch vorhanden.
|
||||
|
||||
2. **Verzeichnis `node_modules/which` gezippt**
|
||||
→ als `which.zip` gespeichert.
|
||||
|
||||
3. **ZIP-Datei auf den Zielserver übertragen**
|
||||
→ Manuell entpackt in das entsprechende `node_modules/which`-Verzeichnis.
|
||||
|
||||
4. **App gestartet → Funktioniert wieder.**
|
||||
60
docs/troubleshooting/npm-ci-vs-install.md
Normal file
60
docs/troubleshooting/npm-ci-vs-install.md
Normal file
@@ -0,0 +1,60 @@
|
||||
# 📦 Problem mit Abhängigkeiten und npm-Fehlern
|
||||
|
||||
**Datum:** 17.06.2025
|
||||
|
||||
## ❓ Problem
|
||||
|
||||
Nach einem Update oder manuellem Eingriff traten folgende Probleme auf:
|
||||
|
||||
- `npm run dev` funktionierte nicht mehr.
|
||||
- Fehlermeldungen wie `Cannot find module 'which`, `tailwindcss`, oder 500er Fehler beim Start.
|
||||
- Konflikte in `package-lock.json`, z. B. bei `@mui/material`.
|
||||
|
||||
---
|
||||
|
||||
## 🛠️ Lösungsschritte
|
||||
|
||||
### 1. ❌ Komplett zurücksetzen
|
||||
|
||||
Lösche folgende Ordner und Dateien:
|
||||
|
||||
```bash
|
||||
node_modules, package-lock.json, package.json, .next
|
||||
```
|
||||
|
||||
### 2. 🧱 Alte funktionierende `package-lock.json` verwenden
|
||||
|
||||
Füge die gesicherte Version wieder ein.
|
||||
|
||||
### 3. 📦 Neu installieren
|
||||
|
||||
```bash
|
||||
npm ci
|
||||
```
|
||||
|
||||
> Wichtig: `npm ci` verwendet exakt die Versionen aus der `package-lock.json`.
|
||||
|
||||
### 4. 📝 Alte `package.json` zurückholen
|
||||
|
||||
Falls nötig, auch die alte `package.json` ersetzen.
|
||||
|
||||
### 5. 🚀 Projekt starten
|
||||
|
||||
```bash
|
||||
npm run dev
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ✅ Empfehlung für die Zukunft
|
||||
|
||||
- **Immer `package.json` und `package-lock.json` sichern**, wenn eine Version stabil funktioniert.
|
||||
- **Husky-Hook** verwenden, um Version bei jedem Commit automatisch zu erhöhen.
|
||||
- Zusätzlich kannst du `node_modules-v1.1.xxx.zip` archivieren.
|
||||
|
||||
---
|
||||
|
||||
## 🗂️ Dateiablage
|
||||
|
||||
Diese Datei wurde erstellt für zukünftige Referenz und liegt in
|
||||
`/docs/troubleshooting/npm-ci-vs-install.md`.
|
||||
BIN
docs/troubleshooting/screenshots/error-which-module.png
Normal file
BIN
docs/troubleshooting/screenshots/error-which-module.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 65 KiB |
BIN
node_modules.zip
Normal file
BIN
node_modules.zip
Normal file
Binary file not shown.
@@ -3,4 +3,4 @@ module.exports = {
|
||||
tailwindcss: {},
|
||||
autoprefixer: {},
|
||||
},
|
||||
}
|
||||
};
|
||||
|
||||
1430
websocketDump/GisLinesStatus.json
Normal file
1430
websocketDump/GisLinesStatus.json
Normal file
File diff suppressed because it is too large
Load Diff
112
websocketDump/GisStationsMeasurements.json
Normal file
112
websocketDump/GisStationsMeasurements.json
Normal file
@@ -0,0 +1,112 @@
|
||||
[
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 3,
|
||||
"Na": "FBT",
|
||||
"Val": "15",
|
||||
"Unit": "°C",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 10,
|
||||
"Na": "GT",
|
||||
"Val": "-2.14",
|
||||
"Unit": "°C",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 2,
|
||||
"Na": "LT",
|
||||
"Val": "0.21",
|
||||
"Unit": "°C",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 6,
|
||||
"Na": "RLF",
|
||||
"Val": "77.54",
|
||||
"Unit": "%",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 4,
|
||||
"Na": "RS",
|
||||
"Val": "30.33",
|
||||
"Unit": "%",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 11,
|
||||
"Na": "TPT",
|
||||
"Val": "2.99",
|
||||
"Unit": "°C",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 12,
|
||||
"Na": "TT1",
|
||||
"Val": "0.1245",
|
||||
"Unit": "°C",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 16,
|
||||
"Na": "WFD",
|
||||
"Val": "0.211",
|
||||
"Unit": "mm",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 8,
|
||||
"Na": "WGM",
|
||||
"Val": "0.5",
|
||||
"Unit": "m/s",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 9,
|
||||
"Na": "WGS",
|
||||
"Val": "0.75",
|
||||
"Unit": "m/s",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
},
|
||||
{
|
||||
"IdLD": 50937,
|
||||
"IdL": 24101,
|
||||
"IdDP": 7,
|
||||
"Na": "WR",
|
||||
"Val": "180",
|
||||
"Unit": "°",
|
||||
"Gr": "GMA",
|
||||
"Area_Name": "Rastede"
|
||||
}
|
||||
]
|
||||
155
websocketDump/GisStationsStaticDistrict.json
Normal file
155
websocketDump/GisStationsStaticDistrict.json
Normal file
@@ -0,0 +1,155 @@
|
||||
[
|
||||
{
|
||||
"LD_Name": "CPL Ismail4",
|
||||
"IdLD": 50922,
|
||||
"Device": "CPL V3.5 mit 24 Kü",
|
||||
"Link": "cpl.aspx?ver=35&kue=24&id=50922",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 20,
|
||||
"System": 1,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "LR 77 ISA",
|
||||
"IdLD": 50935,
|
||||
"Device": "LTE Modem LR77",
|
||||
"Link": "lr77.aspx?ver=1&id=50935",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 12,
|
||||
"System": 5,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "Cisco Router 1841",
|
||||
"IdLD": 50936,
|
||||
"Device": "Cisco 1841",
|
||||
"Link": "cisco1841.aspx?ver=1&id=50936",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 21,
|
||||
"System": 6,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "GMA Testgerät ISA",
|
||||
"IdLD": 50937,
|
||||
"Device": "Glättemeldeanlage",
|
||||
"Link": "gma.aspx?ver=1&id=50937",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 1,
|
||||
"System": 11,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "SMS-Funkmodem",
|
||||
"IdLD": 50938,
|
||||
"Device": "SMS Funkmodem",
|
||||
"Link": "sms_modem.aspx?ver=1&id=50938",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 12,
|
||||
"System": 111,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "TALAS Meldestationen ISA",
|
||||
"IdLD": 50939,
|
||||
"Device": "CPL V3.5 mit 16 Kü",
|
||||
"Link": "cpl.aspx?ver=35&kue=16&id=50939",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 20,
|
||||
"System": 1,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "WAGO Klemmen ISA",
|
||||
"IdLD": 50941,
|
||||
"Device": "WAGO 16 DE",
|
||||
"Link": "wago.aspx?ver=1&DE=16&id=50941",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 9,
|
||||
"System": 7,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "Cisco 1921",
|
||||
"IdLD": 50942,
|
||||
"Device": "Cisco 1921",
|
||||
"Link": "cisco1921.aspx?ver=1&id=50942",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 21,
|
||||
"System": 6,
|
||||
"Active": 1
|
||||
},
|
||||
{
|
||||
"LD_Name": "Cisco 8200",
|
||||
"IdLD": 50943,
|
||||
"Device": "Cisco 8200",
|
||||
"Link": "cisco8200.aspx?ver=1&id=50943",
|
||||
"Location_Name": "Littwin",
|
||||
"Location_Short": "LTW",
|
||||
"IdLocation": 24101,
|
||||
"Area_Name": "Rastede",
|
||||
"Area_Short": "",
|
||||
"IdArea": 20998,
|
||||
"X": 53.242157,
|
||||
"Y": 8.160353,
|
||||
"Icon": 21,
|
||||
"System": 6,
|
||||
"Active": 1
|
||||
}
|
||||
]
|
||||
101
websocketDump/GisStationsStatusDistrict.json
Normal file
101
websocketDump/GisStationsStatusDistrict.json
Normal file
@@ -0,0 +1,101 @@
|
||||
[
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "system",
|
||||
"Le": 4,
|
||||
"Co": "#FF00FF",
|
||||
"Me": "Eingang DE 01 kommend test2",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "system",
|
||||
"Le": 4,
|
||||
"Co": "#FF00FF",
|
||||
"Me": "Eingang DE 05 kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "system",
|
||||
"Le": 4,
|
||||
"Co": "#FF00FF",
|
||||
"Me": "Eingang DE 17 kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "system",
|
||||
"Le": 4,
|
||||
"Co": "#FF00FF",
|
||||
"Me": "Eingang DE 31 kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "system",
|
||||
"Le": 4,
|
||||
"Co": "#FF00FF",
|
||||
"Me": "Eingang DE 32 kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "system",
|
||||
"Le": 4,
|
||||
"Co": "#FF00FF",
|
||||
"Me": "Station offline",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "minor",
|
||||
"Le": 3,
|
||||
"Co": "#FFFF00",
|
||||
"Me": "Eingang DE 02 kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "minor",
|
||||
"Le": 3,
|
||||
"Co": "#FFFF00",
|
||||
"Me": "KÜG 08: Überspannung gehend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "major",
|
||||
"Le": 2,
|
||||
"Co": "#FF9900",
|
||||
"Me": "Eingang DE 03 kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "critical",
|
||||
"Le": 1,
|
||||
"Co": "#FF0000",
|
||||
"Me": "KÜG 02: Aderbruch kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
},
|
||||
{
|
||||
"IdLD": 50922,
|
||||
"Na": "critical",
|
||||
"Le": 1,
|
||||
"Co": "#FF0000",
|
||||
"Me": "KÜG 03: Aderbruch kommend",
|
||||
"Feld": 4,
|
||||
"Icon": 0
|
||||
}
|
||||
]
|
||||
114
websocketDump/GisSystemStatic.json
Normal file
114
websocketDump/GisSystemStatic.json
Normal file
@@ -0,0 +1,114 @@
|
||||
[
|
||||
{
|
||||
"IdSystem": 1,
|
||||
"Name": "TALAS",
|
||||
"Longname": "Talas Meldestationen",
|
||||
"Allow": 1,
|
||||
"Icon": 1
|
||||
},
|
||||
{
|
||||
"IdSystem": 2,
|
||||
"Name": "ECI",
|
||||
"Longname": "ECI Geräte",
|
||||
"Allow": 1,
|
||||
"Icon": 2
|
||||
},
|
||||
{
|
||||
"IdSystem": 3,
|
||||
"Name": "ULAF",
|
||||
"Longname": "ULAF Geräte",
|
||||
"Allow": 0,
|
||||
"Icon": 3
|
||||
},
|
||||
{
|
||||
"IdSystem": 5,
|
||||
"Name": "GSM Modem",
|
||||
"Longname": "LR77 GSM Modems",
|
||||
"Allow": 1,
|
||||
"Icon": 5
|
||||
},
|
||||
{
|
||||
"IdSystem": 6,
|
||||
"Name": "Cisco Router",
|
||||
"Longname": "Cisco Router",
|
||||
"Allow": 1,
|
||||
"Icon": 6
|
||||
},
|
||||
{
|
||||
"IdSystem": 7,
|
||||
"Name": "WAGO",
|
||||
"Longname": "WAGO I/O Systeme",
|
||||
"Allow": 1,
|
||||
"Icon": 7
|
||||
},
|
||||
{
|
||||
"IdSystem": 8,
|
||||
"Name": "Siemens",
|
||||
"Longname": "Siemens Notrufsysteme",
|
||||
"Allow": 1,
|
||||
"Icon": 8
|
||||
},
|
||||
{
|
||||
"IdSystem": 9,
|
||||
"Name": "OTDR",
|
||||
"Longname": "Glasfaserüberwachung OTU",
|
||||
"Allow": 1,
|
||||
"Icon": 9
|
||||
},
|
||||
{
|
||||
"IdSystem": 10,
|
||||
"Name": "WDM",
|
||||
"Longname": " Wavelength Division Multiplexing",
|
||||
"Allow": 1,
|
||||
"Icon": 10
|
||||
},
|
||||
{
|
||||
"IdSystem": 11,
|
||||
"Name": "GMA",
|
||||
"Longname": "Glättemeldeanlagen",
|
||||
"Allow": 1,
|
||||
"Icon": 11
|
||||
},
|
||||
{
|
||||
"IdSystem": 13,
|
||||
"Name": "Messstellen",
|
||||
"Longname": "Messstellen",
|
||||
"Allow": 1,
|
||||
"Icon": 13
|
||||
},
|
||||
{
|
||||
"IdSystem": 30,
|
||||
"Name": "TK-Komponenten",
|
||||
"Longname": "TK-Komponenten",
|
||||
"Allow": 1,
|
||||
"Icon": 30
|
||||
},
|
||||
{
|
||||
"IdSystem": 100,
|
||||
"Name": "TALAS ICL",
|
||||
"Longname": "Talas ICL Unterstationen",
|
||||
"Allow": 1,
|
||||
"Icon": 100
|
||||
},
|
||||
{
|
||||
"IdSystem": 110,
|
||||
"Name": "DAUZ",
|
||||
"Longname": "Dauerzählstellen",
|
||||
"Allow": 1,
|
||||
"Icon": 110
|
||||
},
|
||||
{
|
||||
"IdSystem": 111,
|
||||
"Name": "SMS Modem",
|
||||
"Longname": "SMS Modem",
|
||||
"Allow": 1,
|
||||
"Icon": 111
|
||||
},
|
||||
{
|
||||
"IdSystem": 200,
|
||||
"Name": "Sonstige",
|
||||
"Longname": "Sonstige",
|
||||
"Allow": 1,
|
||||
"Icon": 200
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user