Someone else summed up the stack trace here:
Now I looked at:
and I see "org.apache.maven.project;resolution:=optional" ...
I guess it is optional due to the dynamic / replacable Maven runtimes, however all Spring code that uses it should check it is currently in a resolved with the OSGi container, before using code path that rely on it to exist.
I also do not see in the MANIFEST.MF
As if I look at eclipse-jee-luna-SR1-win32-x86_64/plugins/org.eclipse.m2e.maven.runtime_18.104.22.16841015-1550/META-INF/MANIFEST.MF I see it is provided here and this m2e plugin comes with all m2e installs to provided the mandatory embeded implementation.