Pengalaman Mengatasi Eror Akibat Update Node JS Terbaru

Kamis, 14 Jul 2022

Node js memiliki berbagai kelebihan sehingga dapat dimanfaatkan untuk membantu proses pembuatan aplikasi web maupun aplikasi hybrid. Node Js dapat membantu kita membuat aplikasi agar memiliki kecepatan hampir setara aplikasi native tapi dengan cara seperti membangun web app. Tapi terkadang sewaktu melakukan update Node ataupun npm muncul masalah yang perlu segera diselesaikan.

Kemarin sehabis malam takbiran, berawal dari masalah admob yang gagal menemukan app-ads.txt membuat saya harus menjalankan serangkaian tidakan yang ceritanya saya persingkat saja.

Saya menggunakan situs developer di server Firebase. Karena mengalami kendala untuk mengaksesnya melalui CLI (Command Line Interface), maka Saya memutuskan untuk mengupdate firebase CLI dimana setelah berhasil update, ternyata update itu malah bermasalah dengan versi Node (v.14) yang tidak sesuai dengan Firebase CLI terbaru (v 11.2.1), maka saya diminta untuk update versi Node-Js.

Sebagaimana petunjuk diatas maka saya kemudian melakukan update, pada contoh ini sehingga menjadi NodeJS (v16.16.0) dan npm (v8.13.2) dengan harapan agar firebase CLI dapat dijalankan dengan baik. Ternyata malah timbul beberapa masalah lainnya yaitu:

Masalah WARN config global `--global`, `--local` are deprecated

Setelah melalui proses update firebase tool dan NodeJs yang tidak sebentar, ternyata malah muncul pesan warn yaitu:

npm WARN config global `--global`, `--local` are deprecated. Use `--location=global` instead.

Pada awalnya saya cuekin saja warning atau peringatan tersebut, tapi lama-lama saya juga merasa terganggu dengan pesan warn di command line tersebut, karena ketika node dan npm digunakan untuk aktifitas sebenarnya tetap bisa jalan. Akhirnya saya memutuskan untuk membenahi kesalahan yang mungkin timbul.

Ternyata setelah mencoba beberapa pilihan dari tutorial lainnya, saya akhirnya menemukan petunjuk yang efektif.

mengatasi config global nodejs

Cara Menghilangkan Warning config global.

Ada dua bagian yang perlu anda lakukan yakni:

1. Edit file npm.cmd

Langkah-langkahnya sebagai berikut:

a. masuk folder installasi NodeJS

misal:

C:\program files\nodejs\

b. buka text-editor misalnya notepad++, visual studio code atau lainnya dalam mode admin

c. Edit file npm.cmd

d. ubah baris 12. pada bagian prefix -g menjadi prefix --location=global

e. simpan file

2. Edit file npm

langkah-langkahnya sebagai berikut:

a. masuk folder installasi NodeJS sama seperti diatas

misal:

c:\program files\nodejs\

b. buka text-editor dengan mode admin

c. edit file npm tanpa ekstensi file

d. ubah baris 23 pada bagian prefix -g menjadi prefix -- location=global

e. simpan file

Masalah Invalid "main"

Ketika menjalankan Cordova muncul pesan seperti berikut:
(node:423) [DEP0128] DeprecationWarning: Invalid 'main' field in 'c:/userInkonstellasi/AppData/Roaming/npm/.npm-global/lib/node_modules/cordova/node_modules/objectorarray/package.json' of 'dist/index.js'. Please either fix that or report it to the module author (Use `node --trace-deprecation ...` to show where the warning was created)

Solusinya yaitu:
a. Untuk menangani masalah ini maka anda perlu mengubah isi file package.json yang lokasinya ada di petunjuk warning. Seperti contoh diatas maka lokasinya ada di:
c:/userInkonstellasi/AppData/Roaming/npm/.npm-global/lib/node_modules/cordova/node_modules/objectorarray/package.json'
Silahkan sesuaikan dengan petunjuk warning anda.
b. Silahkan ubah file package.json pada bagian:
"main": "dist/index.js",
menjadi
"main": "index.js",

Sampai disini node dan npm sudah dapat kembali normal, dan saya sudah dapat menggunakan firebase cli kembali.
logoblog

Tidak ada komentar:

Posting Komentar