首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java的SASS实现?

Java的SASS实现?
EN

Stack Overflow用户
提问于 2009-11-18 04:18:26
回答 12查看 34.5K关注 0票数 75

我正在寻找Java中的SASS实现(可以与JSP/JSF一起使用)。对于Python,我已经找到了CleverCSS,但是没有用于Java的东西。有人听说过这种生成CSS的工具吗?

EN

回答 12

Stack Overflow用户

发布于 2010-12-15 18:30:27

使用ANT的

  1. 下载完整的jar文件(JRuby Complete jar download page)
  2. Download最新的HAML/SASS代码(HAML/SASS tarball),并将其解压缩。将以下内容放入"/libs/sass-VERSION"
  3. Add中以构建file.
  4. Replace版本的ant脚本中的相应版本的JRuby和sass
  5. 运行ant脚本,然后将编译sass或scss文件!

代码语言:javascript
复制
<path id="JRuby">
    <fileset file="libs/jruby-complete-[VERSION].jar"/> <!-- Location of JRuby jar file -->
</path>  

<target name="compileSCSS">
    <echo message="Compiling scss files..." />
    <property name="filesIn" value="${dir.css}/scss/**/[^_]*.scss" />
    <property name="fileOutDir" value="/${dir.css}/${dir.css.build}" />
    <script language="ruby" classpathref="JRuby">
        <![CDATA[
            require 'libs/sass-[VERSION]/lib/sass'
            require 'sass/exec'

            files = Dir.glob($project.getProperty('filesIn'))
            Dir.mkdir($project.getProperty('fileOutDir')) unless File.exists?($project.getProperty('fileOutDir'))
            files.each do 
                | file |
                puts "     [sass compiler] " + file + " -> " + $project.getProperty('fileOutDir') + "/" + File.basename(file, ".*") + ".css"
                opts = Sass::Exec::Sass.new(["--load-path", File.dirname(file), file, File.join($project.getProperty('fileOutDir'), File.basename(file, ".*") + ".css")])
                opts.parse
            end
        ]]>
    </script>
    <echo message="Done compiling scss files!" />
</target>

带有MAVEN的

Maven也可以这样做:使用antrun插件:

代码语言:javascript
复制
<project>
<build>
<plugins>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-antrun-plugin</artifactId>
    <version>1.6</version>
    <executions>
        <execution>
            <id>compileAndMinify</id>
            <phase>compile</phase>
            <goals>
                <goal>run</goal>
            </goals>
            <configuration>
                <target>
                    <mkdir dir="${project.build.directory}/compiled" />

                    <echo message="Compiling scss files..."/>
                    <path id="JRuby">
                        <fileset file="${basedir}/jars/jruby-complete-[VERSION].jar"/>
                    </path>
                    <property name="filesIn" value="${project.build.directory}/css/**/[^_]*.scss" />
                    <property name="fileOutDir" value="${project.build.directory}/compiled/css" />
                    <script language="ruby" classpathref="JRuby">
                        <![CDATA[
                            require 'libs/sass-[VERSION]/lib/sass'
                            require 'sass/exec'

                            files = Dir.glob($project.getProperty('filesIn'))
                            Dir.mkdir($project.getProperty('fileOutDir')) unless File.exists?($project.getProperty('fileOutDir'))
                            files.each do 
                                | file |
                                puts "     [sass compiler] " + file + " -> " + $project.getProperty('fileOutDir') + "/" + File.basename(file, ".*") + ".css"
                                opts = Sass::Exec::Sass.new(["--load-path", File.dirname(file), file, File.join($project.getProperty('fileOutDir'), File.basename(file, ".*") + ".css")])
                                opts.parse
                            end
                        ]]>
                    </script>
                </target>
            </configuration>
        </execution>
    </executions>
</plugin>
</plugins>
</build>
</project>  
票数 49
EN

Stack Overflow用户

发布于 2011-11-11 18:51:43

ZUSS是LESS和SASS的一个很好的替代方案。它类似于LESS。与LESS和SASS不同,ZUSS文件的处理不需要JavaScript解释器。

免责声明:我是ZUSS的开发者。我之所以开发它,只是因为我找不到一个简洁的Java解决方案。

票数 19
EN

Stack Overflow用户

发布于 2010-04-15 10:57:30

有一个项目:http://code.google.com/p/jsass/ (但它还处于非常早期的阶段)。

如果你对Less感兴趣,有一个现成的Java版本:http://www.asual.com/lesscss/

票数 14
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1751479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档