From, Arunkumar Velusamy (https://www.linkedin.com/in/arunkumarvelusamy/
Reasons could be,
1. class file name given in testng.xml is invalid and you could see that classpath printed in error message is not matching with actual classpath
2. compiled classes are not available inside the project or inside the jar file. Classpath printed in error message would be correct in this case.