Foros de discusión

Unable to parse SASS on CSS

thumbnail
Sergio Romero Zayas, modificado hace 10 años.

Unable to parse SASS on CSS

Regular Member Mensajes: 151 Fecha de incorporación: 14/04/08 Mensajes recientes
Supongo que a más de uno y más de dos le ha ocurrido el problema "Unable to parse SASS on CSS", y que más de uno ha intentado solucionar el problema siguiendo los pasos que indica Kan Zhang en su post en el blog de Liferay.

He seguido los pasos, inclusive lo que alguno indica en los comentarios del post, y sigue sin solventarse mi problema.

El error sigue siendo el mismo.

LoadError: no such file to load -- chunky_png
  require at org/jruby/RubyKernel.java:1038
   (root) at D:/LF_611GA2/tomcat-7.0.27/temp/liferay/ruby/gems/compass-0.12.2/lib/compass/sass_extensions/sprites/engines/chunky_png_e
gine.rb:4
  require at org/jruby/RubyKernel.java:1038
   (root) at D:/LF_611GA2/tomcat-7.0.27/temp/liferay/ruby/gems/compass-0.12.2/lib/compass/sass_extensions/sprites/engines/chunky_png_e
gine.rb:25
  require at org/jruby/RubyKernel.java:1038
   (root) at D:/LF_611GA2/tomcat-7.0.27/temp/liferay/ruby/gems/compass-0.12.2/lib/compass/sass_extensions/sprites/engines.rb:18
  require at org/jruby/RubyKernel.java:1038
   (root) at D:/LF_611GA2/tomcat-7.0.27/temp/liferay/ruby/gems/compass-0.12.2/lib/compass/sass_extensions/sprites.rb:10
  require at org/jruby/RubyKernel.java:1038
   (root) at D:/LF_611GA2/tomcat-7.0.27/temp/liferay/ruby/gems/compass-0.12.2/lib/compass/sass_extensions.rb:5
     each at org/jruby/RubyArray.java:1603
   (root) at D:/LF_611GA2/tomcat-7.0.27/temp/liferay/ruby/gems/compass-0.12.2/lib/compass.rb:4
  require at org/jruby/RubyKernel.java:1038
   (root) at D:/LF_611GA2/tomcat-7.0.27/temp/liferay/ruby/gems/compass-0.12.2/lib/compass.rb:1
09:23:38,517 ERROR [http-bio-8080-exec-9][MinifierFilter:435] Unable to parse SASS on CSS D:\LF_611GA2\tomcat-7.0.27\webapps\prueba-th
me\css\main.css
org.jruby.embed.EvalFailedException: (LoadError) no such file to load -- chunky_png
        at org.jruby.embed.internal.EmbedEvalUnitImpl.run(EmbedEvalUnitImpl.java:127)
        at org.jruby.embed.ScriptingContainer.runUnit(ScriptingContainer.java:1231)
        at org.jruby.embed.ScriptingContainer.runScriptlet(ScriptingContainer.java:1224)
        at com.liferay.portal.scripting.ruby.RubyExecutor.eval(RubyExecutor.java:177)
        at com.liferay.portal.scripting.ruby.RubyExecutor.eval(RubyExecutor.java:121)
    [...]


He leído varios post, varias entradas del foro, incluso en el jira dicen que esta resuelto... pero para la versión 6.2... o la 6.1 Enterprise... en fin.

¿Alguna idea?

emoticon
thumbnail
Sergio Romero Zayas, modificado hace 10 años.

RE: Unable to parse SASS on CSS (Respuesta)

Regular Member Mensajes: 151 Fecha de incorporación: 14/04/08 Mensajes recientes
Me contesto a mi mismo, lo mismo a alguien que haya pasado lo que a mi, le ayuda.

Antes de seguir leyendo todo este rollo que voy a soltar, para que lo lleguen a entender por favor, lean primero a Kan Zhang en su post en el blog de Liferay.

Vamos al lío! emoticon

Tras realizar todo lo que se indica en los pasos que indica Kan Zhang y no lograr eliminar los errores del log, intenté varias opciones más, algunas de ellas citadas en los comentarios del mismo post, sin obtener resultado satisfactorio,... hasta que dí con la tecla!! emoticon

Pues bien, como bien dice Kan Zhang en su post, Liferay ahora usa nuestra carpeta temporal de nuestro usuario de sistema para almacenar sus cosas, tal que así:

C:\Users\<mi_usuario>\AppData\Local\Temp\liferay</mi_usuario>


Es en esta carpeta, según Kan Zhang es donde hay que eliminar la carpeta de "ruby". El problema que yo tenía es que tras substituir la librería en el ROOT/WEB-INF/lib de Liferay 6.1 por la de la 6.2, y eliminar la citada carpeta, seguía apareciendo el error en el log.

Tras varios intentos fallidos, se me ocurrió mirar los temporales de liferay...
D:\<liferay_bundle_6.1.1.ga2>\tomcat-7.0.27\temp\</liferay_bundle_6.1.1.ga2>

Cuando comparé las carpetas "liferay" del temp de tomcat y del temp de mi usuario de sistema, me percaté que eran las mismas. Entonces sobrescribí la carpeta del tomcat "liferay" del temp, en la del temporal de mi usuario. Tras hacer esto levante liferay y se acabó el error! emoticon

Esto me hace pensar que liferay usa directamente los ficheros del sistema en lugar de los temporales del tomcat, lo cual no termina de convencerme el porque de su uso, pero al menos sé ya la solución del problema inicial emoticon
thumbnail
Jose A. Jiménez, modificado hace 10 años.

RE: Unable to parse SASS on CSS

Regular Member Mensajes: 176 Fecha de incorporación: 23/08/12 Mensajes recientes
Hola Sergio,

Si no se establece expresamente el directorio temporal a la JVM con que corre el Tomcat, puede que las aplicaciones o procesos JAVA que lance el servidor generen temporales en el directorio temporal por defecto de la JVM de tu sistema.

Para evitarlo sólo tienes que añadir al setenv.bat (o setenv.sh) la opción java: -Djava.io.tmpdir=RUTA_A_TEMPORALES

Pudiendo establecer por ejemplo la del temporal de Tomcat.

Nota: Este mismo problema sucede con otros servidores de aplicaciones siendo la solución la equivalente.

Un saludo,
Jose