3

以下の構成ファイルで定義されているように、Plovr を使用して JavaScript ファイルをコンパイルしようとしています。

{
  "id": "hello_demo",
  "paths": ".",  
  "closure-library": "closure-library/closure/goog/",
  "mode": "ADVANCED",
  "level": "DEFAULT",
  "pretty-print": true, 
  "externs": ["prototype.js"],
  "modules": {
    "core_scripts": {
      "inputs": "core_scripts.js",
      "deps": []
    },
    "add_new_item": {
      "inputs": "add_new_item.js",
      "deps": "core_scripts"
    }
  },
  "module-output-path": "build/module_%s.js"
}

以下のコマンドを使用して Plovr サーバーを起動します。

java -jar c:/wf/my_project/plovr/plovr.jar serve c:/wf/my_project/js/plovr-config.js

次にhttp://localhost:9810/compile?id=hello_demo、Web ブラウザーに移動し、コンパイルが完了すると、「core_scripts.js」のコンパイル済みコードのみが表示されます。

コンパイラが "c:/wf/my_project/js/build/" に 2 つのコンパイル済み JavaScript ファイルを作成したはずですが、何もありません。

何か不足していますか?

よろしくお願いいたします。

4

2 に答える 2

3

http://www.klokantech.com/では、初心者向けに Plovr と Closure Library を使用した開発用のサンプルのセットを用意しました。見る:

https://github.com/klokan/closure-library-plovr-hello-world-skeletons

helloworld、Google Maps API V3 を使用した基本アプリ、Closure Templates (soy) を使用したデモ、OpenLayers アプリなどがあります。

本当にモジュールをコンパイルする必要があるかどうかはわかりません。特に、Plovr と Closure を初めて使用する場合はなおさらです。Closure Tools の考え方は、通常、完全なコードがすべて 1 つの .js ファイルにコンパイルされるというものです。これが、Closure Compiler Advanced 最小化が最適に実行される方法です。私のブログ投稿を読んでください:

http://blog.klokantech.com/2010/12/closure-compiler-for-openlayers-3x.html

とにかく、上記のスケルトンのサンプルコードは、Plovr でモジュールを操作する方法も示しています。複雑な JavaScript コードの動的に読み込み可能な拡張機能 - Gmail のようなシングルページ アプリケーション (SPA) を考えてみてください。インターフェイスのさまざまな部分が追加機能 (設定ダイアログ、エディター用の Composer 機能など) を読み込みます。以下のコードmodules-apihttps://github.com/klokan/closure-library-plovr-hello-world-skeletonsmodulesにあります。

于 2014-03-21T08:05:24.937 に答える
2

plovrの「serve」コマンドを使用しています。これはサーバーを起動するだけです(静的ファイルを生成せずにサーバー上でコンパイルします)。次のように、「build」コマンドを(同じオプションで)実行して、ローカルサーバー上にファイルを生成します。

java -jar c:/wf/my_project/plovr/plovr.jar build c:/wf/my_project/js/plovr-config.js

于 2013-03-12T14:44:02.283 に答える