Intershop 7.8 setting.gradle, jvm arguments

150 views Asked by At

In the following cookbook chapter 3.3.3: https://support.intershop.com/kb/index.php/Display/2V8150

There is a configuration for the jvm arguments, which is not working. I've tried 4 different configs and they all crash my deploy:

    tomcat {
        instances {
            appserver0 {
                jvmArgs {                
                    maxHeapSize = 4096
                    minHeapSize = 2048
                    additionalJvmArgs = ['\\u0022-XX:MaxPermSize=256m\\u0022']            
                }
            }
        }
    }

    tomcat {
        instances {
            appserver0 {
                jvmArgs {                
                    maxHeapSize = 4096m
                    minHeapSize = 2048m
                    additionalJvmArgs = ['\\u0022-XX:MaxPermSize=256m\\u0022']            
                }
            }
        }
    }

    appserver {
        instances {
            appserver0 {
                jvmArgs {                
                    maxHeapSize = 4096
                    minHeapSize = 2048
                    additionalJvmArgs = ['\\u0022-XX:MaxPermSize=256m\\u0022']            
                }
            }
        }
    }

    appserver {
        instances {
            appserver0 {
                jvmArgs {                
                    maxHeapSize = 4096m
                    minHeapSize = 2048m
                    additionalJvmArgs = ['\\u0022-XX:MaxPermSize=256m\\u0022']            
                }
            }
        }
    }

Does someone has this configuration setting working?

2

There are 2 answers

0
Ties van Ham On

The problem seems to be the additional JVM arguments. When leaving this out it works. This will result in the following code snippet.

tomcat {
    instances {
        appserver0 {
            jvmArgs {
                minHeapSize = 2048
                maxHeapSize = 4096
            }
        }
    }
}
0
C. Polack On

There was a defect in the deployment tools that caused double quotes to be preceded by a backslash character in the resulting file (in this case the process.appserver0.command property value in $IS_HOME/engine/nodemanager/config/nodemanager.properties). Please check the resulting property value in the nodemanager.properties file and the command line logged into the $IS_HOME/log/nodemanager.log and $IS_HOME/log/appserver0.log files.

The option in the $IS_HOME/engine/nodemanager/config/nodemanager.properties file should be surrounded by double quotes or the encoded form \u0022 – otherwise Windows interprets the = character as a separator (surrounding the option with double quotes is not necessary on Linux platforms).

This underlying issue has been fixed with Gradle tools version 2.11.6.

Please note that the support of the XX:MaxPermSize option was removed in JDK 8.0 (the option is ignored and results in a warning message).