It's a pain for the compiler to implement multiple inheritance.
It almost never buys you something that containment couldn't do.
It can lead to a lot of obscurity in code maintenance.
These lessons were learned in C++.
Java syntactically started basically as C++ with the cruft removed.
(There's also the issue of portable byte-code+JVM that distinguish it.)