20

今日、多くの新しいツール (npm nodejs) を使用している新しい Grunt ユーザーです。

私は Grunt を「インストール」し、ここで説明されているように init タスクを使用して grunt.js ファイルを作成することができました: http://net.tutsplus.com/tutorials/javascript-ajax/meeting-grunt-the-build -tool-for-javascript/およびここ: https://github.com/cowboy/grunt/blob/master/docs/getting_started.md。しかし、「grunt」コマンドを実行するたびにエラーが発生します。

Windows スクリプト ホスト
スクリプト: c:\users\[]\Documents\code\grunt\grunt.js
2行目
キャラ:1
エラー: 「モジュール」は定義されていません
コード: 800A1391
ソース: Microsoft JScript ランタイム エラー
4

9 に答える 9

24

FAQで説明されているようにgrunt.cmd、Windows では OS が grunt.js を起動しようとするため、代わりに入力する必要があります。

または、代わりに grunt-cli をグローバルにインストールできます。このパッケージは、プロジェクトにローカルにインストールされている場合、Grunt の任意のバージョンを実行します。

于 2012-06-24T10:15:48.883 に答える
3

「MicrosoftJScriptランタイムエラー」が発生した場合は、node.jsが呼び出されていないことを意味します。代わりに、WindowsScriptHostがコードを実行しようとしています。これはおそらくファイルタイプの関連付けの問題です。IIRC Windowsは、デフォルトでWSHを使用して「.js」ファイルを実行しようとします。スクリプトが正しく実行されるように、コマンドライン(おそらく「ノード%1」など)と開始ディレクトリを指定して、スクリプトへのショートカットを作成する必要が生じる場合があります。

コードをどのように呼び出そうとしているのかを正確に教えていただければ助かります。

于 2012-06-16T06:42:19.263 に答える
3

grunt モジュールの最新バージョンでは、Windows で動作させるには次の操作を行う必要があるようです。

グローバルにインストールされたうなり声を削除します

npm uninstall -g grunt

grunt-cli をグローバルにインストールする

npm install -g grunt-cli

プロジェクトに grunt をローカルにインストールする

npm install grunt

grunt (v0.4.x) をグローバルにインストールしても、必要な grunt.cmd が作成されないようです。バージョン固有の Gruntfiles を使用できるように、ローカルに grunt をインストールすることが推奨されているようです

于 2013-03-24T13:59:08.367 に答える
2

これに答えるには、まずWindows Script Hostによって実行されているためにエラーが発生していることを理解する必要があります。

ここで、次の構文を使用してcmd プロンプトからコードを実行します。

>node <application_name>.js

これにより、Node.js アプリケーションがV8 JavaScript エンジン(Google の) を介して開くことができます。

PS: これが問題の解決に役立った場合は返信してください。それ以外の場合は、これを試した後に直面している問題を投稿してください。

于 2016-11-15T05:24:29.843 に答える
2

Florian F が示唆したように、grunt.cmd を実行すると機能します。gruntこれは、Windows がコマンドを探しているプロセスによるものです。

入力するgrunt -hと、Windows は次のファイルの検索に進みます。

  1. ./grunt.cmd
  2. ./grunt.* (この場合、grunt.js が検出されるため、「モジュールが未定義です」と表示されます)
  3. %APPDATA%/npm/grunt.cmd

「grunt.cmd」を使用する代わりに、単にコマンドの名前を grunter に変更するgrunterを使用することです...その後、この問題はなくなります。

于 2013-02-06T02:08:41.377 に答える