Foros de discusión

memory problem with compilation of a basic theme in Plugin SDK of 6.2 ga2

thumbnail
Marco Ferretti, modificado hace 9 años.

memory problem with compilation of a basic theme in Plugin SDK of 6.2 ga2

Regular Member Mensajes: 100 Fecha de incorporación: 4/10/10 Mensajes recientes
Hi all,

I just started taking a look at liferay 6.2 and what's new.
I installed the sources, the plugin-sdk, configured the properties files and fired up liferay.
Then, following the developer's guide, i tried to create a theme (command line, no IDE) following the Liferay Portal 6.2 Developer's Guide

The problem is, when I try to deploy the theme (I believe it's in the WAR ant task) I get the following error :

[java] INFO: Properties for portal loaded from [jar:file:/home/ferrema/devel/liferay6.2/portal/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal.properties]
     [java] Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
     [java] 	at java.util.HashMap.resize(HashMap.java:559)
     [java] 	at java.util.HashMap.addEntry(HashMap.java:851)
     [java] 	at java.util.HashMap.put(HashMap.java:484)
     [java] 	at java.util.HashSet.add(HashSet.java:217)
     [java] 	at org.apache.tools.ant.util.VectorSet.doAdd(VectorSet.java:78)
     [java] 	at org.apache.tools.ant.util.VectorSet.addElement(VectorSet.java:91)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1255)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)

BUILD FAILED
/home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/build-common-plugin.xml:774: The following error occurred while executing this line:
/home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/build-common.xml:1783: The following error occurred while executing this line:
/home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/build-common.xml:175: Java returned: 1



This is puzzling quite a bit since I have a 1gb heap allocated for ANT (excerpt from my .bashrc)

## ANT SETTINGS
ANT_OPTS="-Xmx1024m -XX:MaxPermSize=256m"
export ANT_OPTS


any ideas ?

TIA

Marco
thumbnail
Byrån Zaugg, modificado hace 9 años.

RE: memory problem with compilation of a basic theme in Plugin SDK of 6.2 g

Expert Mensajes: 252 Fecha de incorporación: 6/04/12 Mensajes recientes
This is what I have:

$ echo $ANT_OPTS
-Xmx1024m -XX:MaxPermSize=512m


$ cat build.$USERNAME.properties
javac.memoryMaximumSize=1024m
thumbnail
Marco Ferretti, modificado hace 9 años.

RE: memory problem with compilation of a basic theme in Plugin SDK of 6.2 g

Regular Member Mensajes: 100 Fecha de incorporación: 4/10/10 Mensajes recientes
Hi
thanks for your reply.

I have added the javac bit to the build.<username>.properties and that fixed the out of heap problem, but I got a
[java] Exception in thread "main" java.lang.OutOfMemoryError: GC overhead limit exceeded


In order to fix that I added
-XX:+UseConcMarkSweepGC
to the $ANT_OPTS and the heap space problem re-appeared.
In all honesty I can't think that, before releasing the plugins SDK, people at LF didn't try at least these basic compilations thus I tend to think that I have a configuration problem.

Here's my dev system :

$&gt;lsb_release -a
LSB Version:	core-2.0-amd64:core-2.0-noarch:core-3.0-amd64:core-3.0-noarch:core-3.1-amd64:core-3.1-noarch:core-3.2-amd64:core-3.2-noarch:core-4.0-amd64:core-4.0-noarch:core-4.1-amd64:core-4.1-noarch:security-4.0-amd64:security-4.0-noarch:security-4.1-amd64:security-4.1-noarch
Distributor ID:	Debian
Description:	Debian GNU/Linux testing (jessie)
Release:	testing
Codename:	jessie

$&gt;cat /proc/meminfo | grep -i mem
MemTotal:       12267104 kB
MemFree:         3477992 kB
MemAvailable:    9126756 kB
Shmem:             31672 kB

$&gt;cat build.ferrema.properties
app.server.type=tomcat
app.server.parent.dir=/home/ferrema/devel/liferay6.2/portal/
app.server.tomcat.dir=${app.server.parent.dir}/tomcat-7.0.42
##javac settings
javac.compiler=modern
javac.memoryMaximumSize=1024m

$&gt;echo $ANT_OPTS
-Xmx1024m -XX:MaxPermSize=256m -XX:+UseConcMarkSweepGC

$&gt;echo $JAVA_HOME
/usr/lib/jvm/jdk-7-oracle-x64

$&gt;java -version
java version "1.7.0_60"
Java(TM) SE Runtime Environment (build 1.7.0_60-b19)
Java HotSpot(TM) 64-Bit Server VM (build 24.60-b09, mixed mode)



Any hint would really be appreciated.

TIA

EDIT

I have just tried giving it more memory (doubled it) on ANT_OPTS and build.<user>.properties :

-Xmx2048m -XX:MaxPermSize=512m -XX:+UseConcMarkSweepGC

javac.compiler=modern
javac.memoryMaximumSize=2048m


but I am still getting the heap problem bit :

$ ant
Buildfile: /home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/themes/deep-blue-theme/build.xml

deploy:
     [copy] Copying 655 files to /home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/themes/deep-blue-theme/docroot
     [copy] Copying 5 files to /home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/themes/deep-blue-theme/docroot/templates
     [copy] Copying 11 files to /home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/themes/deep-blue-theme/docroot
     [java] Aug 18, 2014 10:29:20 AM com.liferay.portal.kernel.log.Jdk14LogImpl infoLoading jar:file:/home/ferrema/devel/liferay6.2/portal/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/system.properties
     [java] INFO: No server detected
     [java] Aug 18, 2014 10:29:20 AM com.liferay.portal.kernel.log.Jdk14LogImpl info
     [java] INFO: Global shared lib directory /home/ferrema/devel/liferay6.2/workspace/liferay-plugins-sdk-6.2/lib/
     [java] Aug 18, 2014 10:29:20 AM com.liferay.portal.kernel.log.Jdk14LogImpl info
     [java] INFO: Global lib directory /home/ferrema/devel/liferay6.2/portal/tomcat-7.0.42/lib/ext/
     [java] Aug 18, 2014 10:29:20 AM com.liferay.portal.kernel.log.Jdk14LogImpl info
     [java] INFO: Portal lib directory /home/ferrema/devel/liferay6.2/portal/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/
     [java] 
     [java] Aug 18, 2014 10:29:21 AM com.liferay.portal.kernel.log.Jdk14LogImpl info
     [java] INFO: Properties for portal loaded from [jar:file:/home/ferrema/devel/liferay6.2/portal/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal.properties]
     [java] Loading jar:file:/home/ferrema/devel/liferay6.2/portal/tomcat-7.0.42/webapps/ROOT/WEB-INF/lib/portal-impl.jar!/portal.properties
     [java] Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
     [java] 	at java.util.HashMap.resize(HashMap.java:559)
     [java] 	at java.util.HashMap.addEntry(HashMap.java:851)
     [java] 	at java.util.HashMap.put(HashMap.java:484)
     [java] 	at java.util.HashSet.add(HashSet.java:217)
     [java] 	at org.apache.tools.ant.util.VectorSet.doAdd(VectorSet.java:78)
     [java] 	at org.apache.tools.ant.util.VectorSet.addElement(VectorSet.java:91)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1255)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)
     [java] 	at org.apache.tools.ant.DirectoryScanner.scandir(DirectoryScanner.java:1279)

BUILD FAILED
thumbnail
Marco Ferretti, modificado hace 9 años.

RE: memory problem with compilation of a basic theme in Plugin SDK of 6.2 g

Regular Member Mensajes: 100 Fecha de incorporación: 4/10/10 Mensajes recientes
just a quick edit : I tested the hello-world portlet and have the exact same issue.
I took a look at build-common.xml: looks like the task that's failing is build-css (com.liferay.portal.tools.SassToCssBuilder). Will start looking into that to see if I come up with something ...
thumbnail
Marco Ferretti, modificado hace 9 años.

RE: memory problem with compilation of a basic theme in Plugin SDK of 6.2 g

Regular Member Mensajes: 100 Fecha de incorporación: 4/10/10 Mensajes recientes
looks like there was some sort of problems in the configuration file (build.<username>.properties). I tried to create one from scratch and only put in

app.server.type=[the name build.properties uses for your application server type]
app.server.parent.dir=[the directory containing your Liferay bundle]
app.server.tomcat.dir=[the directory containing your application server]


now both portlet and theme compilation finish ... I wonder if the problem was the reference to some libs in the portal sources...