用于管理CSS爆炸和/或重用的Java库?

Ada*_*ent 10 css java maven-2 jruby sass

Java问:我喜欢CSS用于简单的网页,但是当涉及现实世界的网站时,它会厌恶它,因为你得到了css爆炸和大量的重复.

我很想使用Sass和Compass,但它们是Ruby程序,很可能需要一些有趣的Maven + JRuby才能为Java Web app dev工作.如果您使用Eclipse或支持与正在运行的Web应用程序同步的任何IDE,这也会很困难.

对于地狱中的CSS,还有一个更好的替代方案是Java吗?

Sea*_*oyd 5

我最近使用类似技术LessCss走了同一条路.起初我尝试在我的构建生命周期中嵌入JRuby.但不幸的是,Maven + JRuby是一个怪物,它很慢,巨大而且有些错误(有一半时间甚至没有启动,因为它会抱怨它正在运行的文件路径).

幸运的是,现在有一个LessCss的JavaScript端口,我现在通过Mozilla Rhino嵌入它.我在这篇博文中描述了这个过程.

昨天虽然我把它提升到了一个新的水平,制作一个Maven LessCss插件来最小化POM配置和代码重复.不幸的是我不能分享它,因为它是我当前客户端的专有代码,但解决方案很简单:

使用GMaven创建插件,创建一个调用LessCss编译器的抽象基mojo和几个为不同资源集配置基mojo的具体实现:

例如

  • lesscss:compile
    从所有编译 <resources>${project.build.outputDirectory}
  • lesscss:test-compile
    从所有编译<testResources>${project.build.testOutputDirectory}
  • lesscss:war-compile
    (编译所有src/main/webapp${project.build.directory}/${project.build.finalName} ,分解战争目录)

因此,虽然我无法帮助您使用SASS(除了您要求auth或将其移植到Groovy,Java或JavaScript),我想我已经向您展示了一个可行的替代方案.

当然你也可以在没有Groovy的java中实现Maven插件(也可以通过Rhino嵌入JavaScript),但我认为在Groovy中它更容易.

  • 你见过wro4j吗?您是否可以为其他人的回复添加以下链接:*http://code.google.com/p/wro4j/wiki/LessCssSupport*http://www.asual.com/lesscss/ (2认同)