[FDS-20] How do I modify my jvm.config file for debugging?

Description

In order for FusionDebug to be able to read what line of code it is currently looking, the JVM needs to be put into debug mode. This procedure adds the required debugging parameters to a standard ColdFusion (JRun) installation.

  1. Stop all running ColdFusion services.
  2. Locate the Java configuration file jvm.config. This can be found in the following location:


    Windows:  C:\coldfusion11\cfusion\bin
    Unix:  /opt/coldfusion11/cfusion/bin/
  3. Make a copy of this file, and store the copy somewhere on your disk. In case of problems, you can restore the copy to this location.
  4. Open this file in a text editor (e.g. Notepad).
  5. Locate the line java.args. These are the settings used to start the Java Virtual Machine, in which ColdFusion runs.
  6. Find this option:



    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005


  7. if it exists it should be change to match the following or if it does not then you need to insert the following after the java.args=. All options must be on the same line. Be careful not to introduce any line breaks:



    -Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000


  8. All options must be on the same line. Be careful not to introduce any line breaks.

    The following line is an example of a complete java.args parameter line:


    java.args=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8000 -server -Xms256m -Xmx512m -XX:MaxPermSize=192m -XX:+UseParallelGC -Xbatch -Dcoldfusion.home={application.home} -Djava.security.egd=/dev/urandom -Djava.awt.headless=true -Duser.language=en -Dcoldfusion.rootDir={application.home} -Djava.security.policy={application.home}/lib/coldfusion.policy -Djava.security.auth.policy={application.home}/lib/neo_jaas.policy  -Dcoldfusion.classPath={application.home}/lib/updates,{application.home}/lib,{application.home}/lib/axis2,{application.home}/gateway/lib/,{application.home}/wwwroot/WEB-INF/cfform/jars,{application.home}/wwwroot/WEB-INF/flex/jars,{application.home}/lib/oosdk/lib,{application.home}/lib/oosdk/classes -Dcoldfusion.libPath={application.home}/lib -Dorg.apache.coyote.USE_CUSTOM_STATUS_MSG_IN_HEADER=true -Dcoldfusion.jsafe.defaultalgo=FIPS186Random   
    


  9. If you have other applications running on port 8000, change the port address to a free port. Make a note of the new port
  10. Start all ColdFusion services.

For more information about installing and using FusionDebug, please refer to the User Guide.

Issue Details

Type: Technote
Issue Number: FDS-20
Components: Configuration
Environment:
Resolution: Fixed
Added: 18/05/2007 13:52:24
Affects Version: 2.0
Fixed Version: 1.0
Server: ColdFusion 6, ColdFusion 7, ColdFusion 8, ColdFusion 9, ColdFusion 10
Platform: Windows XP, Windows 2000, Windows 2003, Linux, MacOS, Solaris
Related Issues:
  • FDS-14 – Do I run my page in a browser on port 8000 which I’ve configured in the jvm.config file?
  • FDS-21 – After having configured jvm.config for debugging my server does not start any more!
  • FDS-24 – Can I use FusionDebug with a MultiServer configuration?
  • FDS-71 – How do I debug on a remote computer?
  • FDS-80 – FusionDebug could not connect to the target system (Localhost:8000). Please ensure the debug agent is listening on the system, check you configuration file – Mac OS X
  • FDS-85 – Windows could not start the CF MX7 Server on Local Computer…refer to service-specific error code 2
  • FDS-93 – How do I configure FusionDebug to work with multiple servers or multiple instances?