2011-08-15 10 views
2

V8経由でJSLintを実行しようとしています。V8 Javascriptシェルのスクリプトにコマンドライン引数を渡す

  • these instructionsを使用してV8シェルをダウンロードしてビルドしました。
  • 対話シェルd8が機能し、ファイルを渡すとそのファイルが実行されます。

jslint.jsを実行して、解析するファイルの名前を渡します。私は

d8 jslint.js myfile.js 
d8 jslint.js < myfile.js 
d8 jslint.js -- myfile.js 

コマンドライン引数を取得するにはRhinoのreadline()機能を使用していますjslint.jsの最後でトラブルライン間違いなく

を試してみました。誰かがV8で動作するようにこのスクリプトを修正したのですか、それともV8に引数を渡す一般的な方法はありますか?

更新:スティーブの答えは、スティーブが行ったように、私はずっとcompile JSLint into an executableへの道を見つけなかったことを思い出しましたが、私はもう少しポータブル他の開発者のためだった何かを期待していました。

答えて

3

d8シェルを使用すると、コマンドラインで引数の前に ' - 'を付けて引数を渡すことができます。 はつまり、あなたの場合:

d8 jslint.js -- myfile.js 

Everthing後に「 - 」ので、他のすべてのフラグは、その前に行かなければならない、逐語的に文字列として読み込まれます。 コマンドライン引数は、文字列の配列を保持する "arguments"というグローバル変数としてスクリプトで使用できます。

( ' - 'の代わりに、同義語 '--js-arguments'を使用できます)。

+0

これはしばらくの間[破損](http://code.google.com/p/v8/issues/detail?id=1477)でしたが、もう一度修正されました。 –

2

http://blog.stevenreid.co.uk/2011/06/27/jslint-command-line-tool-powered-by-v8/でv8を使用してJSLintを実行しようとしている可能性があります。

コマンドラインアプリケーションは、JSLintを直接バイナリにコンパイルします。すべてのJSlintオプションがサポートされています。 stdinからの入力だけでなく、複数のソースファイルをlintすることができます。

+0

ありがとう、私はそれを撃つでしょう。 –

+0

私はFOXを構築できませんでした。 'make'コマンドは、' -lXext'、 '-lGL'、' -lGLU'を見つけることができないと言って死にます。何か案は? –

+0

ビルドに失敗した場合でも、今度は 'reswrap'実行可能ファイルを作成してください。それがすべて必要です。 – Steve

関連する問題