@lerxst3 , JDWP stands for Java Debug Wire Protocol. This is the protocol used for communication between the debugger of a Java application, such as ColdFusion, and the Java Virtual Machine. This communication requires a dedicated port. In ColdFusion the JVM settings to enable debugging are located in /cfusion/bin/jvm.config, and look like this:
As you can see, the debug port in this case is 5005. Find out what your own debug port is.
The error you're getting suggests one of two things:
Another process is already listening on the port that your ColdFusion application is using for debugging (maybe another ColdFusion instance or another Java application).
You started debugging twice, and the previous JVM hadn’t released the port yet. Case 1 is the more common. So let's assume another process is using the port. You can identify the process. Take, for example, my debugging port, 5005. I am on Windows. To identify the process running on port 5005, I open Windows PowerShell as Administrator, and run the following command Get-Process -Id (Get-NetTCPConnection -LocalPort 5005).OwningProcess​ The result is:
Note that the result includes the ProcessName and ID. I am happy with process 15728. But let's suppose, on the contrary, that a process with that ID (15728) was in the way of my debugging. Then I could "kill" it. To do so, I would just have to run the following command within the same PowerShell window:
taskkill /PID 15728
Killing a task might lead to other issues. An alternative, perhaps simpler, way to avoid the port conflict is to change ColdFusion's JDWP port. Again using my case for example, the steps would be: 1. In jvm.config, change the port("address") value from 5005 to, say, 5007. (Of course, after having confirmed that the port 5007 is free.)
# Arguments to VM
java.args=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5007 -server ...etc
2. Restart ColdFusion.
... View more