I have strange thing when I try to modify Spring project inside my Spring Tool Suite. On the first load (deploy) everything is fine, application compiles and runs on localho
Print the list of running processes and try to find the one that says spring in it. Once you find the appropriate process ID (PID), stop the given process.
ps aux | grep spring
kill -9 INSERT_PID_HERE
After that, try and run the application again. If you killed the correct process your port should be freed up and you can start the server again.