There seems to be a difference in behaviour between version 10.0.1 and 10.0.3 Ultimate edition of intellij.
I am working with a maven project where some of the dependencies have been set to 'provided' as is normal.
While trying to run a java program (which is located under the java source folder) I get class not found exceptions because the scope of a particular jar is set to provided, again this is quite understandable.
So the solution is to go into [Project Structure -> Modules -> blah_module -> Dependencies] and set the relevent dependency to 'Runtime'. This works in 10.0.1 and the classes get loaded, however in 10.0.3 this does not work - sounds like a bug?