node.jsは今後デファクトスタンダード化するんかわかりませんが、面白いのでちょいちょい勉強しています。まだバージョンが1に満たしていないので、node.jsとmoduleのバージョンで使い方が色々違ったりしています。先人の知恵がたくさんあり、とてもありがたいことなんですが、情報が古かったりそのまま使えなかったりしたもので、自分で解決できたものをメモ代わりに書いていきたいと思います。

sysからutilに変更

該当のファイルを「example.js」というのがあったと例えて話を進めます。サーバーを起動してみたら下記のエラーが出ました。

$ node example.js
The "sys" module is now called "util". It should have a similar interface.
The “sys” module is now called “util”. It should have a similar interface.」ここがエラーの文字ですね。sysモジュールは、今はutilというモジュールを使ってます。って書いてる雰囲気ですw まずはnode.jsのバージョンを調べてみましょう。

$ node -v

これでエンターを押すと、インストールされているnode.jsのバージョンが表示されます。ちなみに僕はv0.6.18と表示しました。

$ node -v
v0.6.18

なんでsysが使えないと出たかというと、node.js v0.3.x以降は、sysモジュールからutilモジュールに変更になったみたい?というのが理由です。なので、サンプルを公開してくれているサイトに、例えば下記のようなScriptが書いてあったら、utilに変更するとうごくかもしれません。

//sysモジュールを要求するスクリプト
var sys = require('sys');

var変数名は、うーん、、とりあえず動くのを試すだけであればこのままでもいいかも。。^^;

//sysをutilに変更
var sys = require('util');

こうですね。これでおそらく動くと思います。

$ node example.js

サーバーを起動してみましょう。どうでしょうか。動きましたか?

utilモジュール
http://nodejs.jp/nodejs.org_ja/docs/v0.4/api/util.html
The "sys" module is now called "util". It should have a similar interface.
【Node.js】sysにエラーが出たらutilに変更してみると解決
Pocket

Tagged on:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です