我正在尝试使用下面配置文件中定义的 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
编译完成后,它只显示“core_scripts.js”的编译代码
我希望编译器在“c:/wf/my_project/js/build/”中创建两个已编译的 JavaScript 文件,但什么也没有。
我错过了什么吗?
提前感谢您的帮助。
最佳答案
在 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 的想法是通常将完整的代码全部编译到一个 .js 文件中——这是 Closure Compiler Advanced 最小化运行的最佳方式。阅读我的博文:
http://blog.klokantech.com/2010/12/closure-compiler-for-openlayers-3x.html
无论如何,上面提到的框架示例代码也展示了如何在 Plovr 中使用模块,例如。复杂 JavaScript 代码的动态可加载扩展——想象一个类似 Gmail 的单页应用程序 (SPA),其中界面的不同部分正在加载附加功能(例如设置对话框、编辑器的 Composer 功能等)。它在https://github.com/klokan/closure-library-plovr-hello-world-skeletons 中modules-api
和modules
下的代码中.
关于javascript - 使用 Plovr 编译模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15339368/