views:

1080

answers:

1

Greetings,

In a shell script,I have setup JAVA_OPTS environment(to enable remote debuggin and increase memory) and then execute the jar file as follows:

export JAVA_OPTS="-Xdebug -Xrunjdwp:transport=dt_socket,address=8001,server=y,suspend=n -Xms512m -Xmx512m"
java -jar analyse.jar $*

But it seems theres no effect of JAVA_OPTS env variable as I cannot connect to remote-debugging and I seem no change in memory for JVM.

What could be the problem?

PS : I cannot use those settings in the "java -jar analyse.jar $*" command because I process command line arguments in the application.

+2  A: 

I don't know of any JVM that actually checks the JAVA_OPTS environment variable. Usually this is used in scripts which launch the JVM and they usually just add it to the java command-line.

The key thing to understand here is that arguments to java that come before the -jar analyse.jar bit will only affect the JVM and won't be passed along to your program. So, modifying the java line in your script to:

java $JAVA_OPTS -jar analyse.jar $*

Should "just work".

ZoogieZork