【问题标题】:What's the best practice for including CSS and javascript files in a java web project?在 Java Web 项目中包含 CSS 和 javascript 文件的最佳实践是什么?
【发布时间】:2011-07-19 23:57:33
【问题描述】:

我最近开始了一个新的谷歌应用引擎项目,该项目使用 RestEasy for MVC 和 Gradle 作为我们的构建过程。现在我想要包含 SASS、javascript 和闭包模板文件,但我不确定我应该如何做到这一点。理想情况下,我希望满足以下要求:

  1. 文件应该位于它们自己的源目录中。例如 src/main/javascript、src/main/sass。
  2. 部署时,应缩小 javascript 文件。
  3. 开发时,应注意闭包模板和 sass 文件的更改并热交换到运行环境中。
  4. 客户端和服务器应该可以访问闭包模板。 (这样可以在任一端进行渲染)

您认为实现这一切的最佳方式是什么? 感谢您的宝贵时间。

【问题讨论】:

    标签: javascript css google-app-engine sass google-closure-templates


    【解决方案1】:
    1. 我将它放入src/main/webapp/jssrc/main/webapp/sass(编译为src/main/webapp/css 这是相当标准的,并且适用于所有maven 插件

    2. yuicompressor-maven-plugin,可以压缩js和css

    3. 如果您正在使用 Compass for SASS,那么它可以立即观看和重新编译(-watch 选项)。顺便说一句,进行热插拔很复杂。而不是它,我在我的 gae 应用程序前面使用本地 nginx,它将所有非静态请求代理到原始码头(由 gae 插件使用),但直接从 @987654326 提供所有静态文件(如 js、图像、css) @。为该场景配置 nginx 非常容易

    4. 这是问题所在,找不到任何好的解决方案 :( 所以我试图仅在客户端呈现这部分(通过使用 jquery-tmpl),将所有数据作为 javascript/json 传递,直接在我的jsp里面

    【讨论】:

    • 感谢您的回复!我拼凑了一组快速的 Gradle 任务来进行 sass 转换(使用 jruby)。这允许我在通过 eclipse 中的 GAE 插件运行应用程序时热交换 css 文件。现在剩下的就是找出热交换 js 的最佳方法。
    • 哎呀,我错过了关于闭包模板的那一点。不幸的是我从未使用过它,所以我不能在那里提出任何建议:(
    猜你喜欢
    • 2010-10-15
    • 2011-01-27
    • 2015-12-11
    • 1970-01-01
    • 2015-08-03
    • 2010-10-04
    • 2022-12-20
    • 2023-03-21
    • 2019-01-03
    相关资源
    最近更新 更多