I am moving our website to a virtual machine, I made some small changes to one of the .cfc file, but ColdFusion keeps giving me the old debug info even the old code doesn't exist. I have to restart coldFusion service in Windows Services every time in order to get the new debug info. Also I already canceled all the Caching options in Administrator page. What should I do?
First thing I would do is turn off caching in the brower, empty the cache, set it to get fresh information on every page load, then CTRL-F5 to make sure I'm getting the new stuff. If that doesn't fix it, then start Googling for how to manually edit config files (make backups first!!!) to go in and manually turn off caching in CFAdmin.
^ _ ^
After you uncheck the Cache/Save-class-files checkboxes in the Administrator, remember to press the button to the submit changes. Then press the buttons to clear cache.
When things run as you expect, think of checking the box to Save-class-files in your production environment. For better performance.
Is this a CFC that you change after starting up CF (and your app)? If all the caching options are off, and yet only a restart of CF "fixes" things, then I suspect that your CFC is stored in a shared scope (like session, or more likely application or server). In that case, no "caching features" in CF are controlling the fact that your changes don't appear.
Instead, you need to reload whatever shared scope variable is holding the "old" instance of the CFC from before you changed it.
If this is in your application, you could reload your application. Some apps are designed to let you pass in a query string (url variable) value that will "reload" the application. There is also a CF function called applicationstop, which stops your app and it is then reloaded on the next request to that app.
Let us know if any of these suggestions (mine or those from the others) get you going.