Clarify documentation to explicitly state that vmargs in eclipse.ini is ignored
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
eclipse (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: eclipse
Using Edgy with Eclipse 3.2.1 and Sun JVM 1.5.0_08-b03
vmargs specified in "/usr/lib/
vmargs in "/usr/lib/
JVM version is the same in both cases:
$ /usr/bin/java -version
java version "1.5.0_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_08-b03)
Java HotSpot(TM) Server VM (build 1.5.0_08-b03, mixed mode)
$ /usr/lib/
java version "1.5.0_08"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_08-b03)
Java HotSpot(TM) Server VM (build 1.5.0_08-b03, mixed mode)
Here are the complete command lines from each method of starting Eclipse. They were collected using "ps -efly | grep eclipse" and then cleaned up to show one parameter per line:
Eclipse started via script "/usr/bin/eclipse":
/usr/lib/
-Djava.
-Dgnu.gcj.
-Dgnu.gcj.
-Dosgi.locking=none
-jar /usr/lib/
-os linux
-ws gtk
-arch x86
-launcher /usr/lib/
-name Eclipse
-showsplash 600
-exitdata 1178016
-install /usr/lib/eclipse
-vm /usr/lib/
-vmargs
-Djava.
-Dgnu.
-Dgnu.
-Dosgi.
-jar /usr/lib/
Eclipse started via launcher "/usr/lib/
/usr/bin/java
-Xms40m
-Xmx512m
-jar /usr/lib/
-os linux
-ws gtk
-arch x86
-launcher /usr/lib/
-name Eclipse
-showsplash 600
-exitdata 11a8016
-vm /usr/bin/java
-vmargs
-Xms40m
-Xmx512m
-jar /usr/lib/
According to "The Eclipse Program Launcher"
http:// www.eclipse. org/swt/ launcher. html
"In general, the settings of the config file are expected to be overriden by the command line.
* the -vmargs from the command line replaces in its entirety the -vmargs from the config file."
So this isn't a *bug* as such, but it is certainly behaviour likely to confuse end-users because it isn't clearly documented up-front in the Ubuntu "eclipse" package notices.
Most Eclipse users are going to expect the Eclipse documentation to be the place to look, and not pick-up easily on this over-ride ramification.
According to the Debian "man eclipse" the file "/home/ <user>/ .eclipse/ eclipserc" should be used but there is no indication of *what* to put in it.
From reading "/usr/bin/eclipse" where it includes the file as a shell script it seems the file should contain bash shell statements, for example:
VMARGS="-Xms40m -Xmx512m"
This should be clearly documented in the man-pages, and also up front in the eclipse package installer notes, not least because many developers are needing to increase the heap and Permanent Generation (PermGen) memory settings to cope with the number of class definitions loaded by the Eclipse environment. E.g:
VMARGS="-Xms40m -Xmx512m -XX:PermSize=128M -XX:MaxPermSize =256M"
and may believe that adding these values to eclipse.ini has dealt with the issue.