I have been reading Effective Java by Joshua Bloch and so far it really lives up to its reputation. The very first item makes a convincing case for
static factories still have to call a constructor in the end. You can move most of the functionality into the static factory, but you cannot avoid using a constructor.
On the other hand for simple cases, you can have just a constructor without having a static factory.
Constructors are the only way to set final fields, which IMHO are preferable to non-final fields.
You can use constructors can in sub-classes. You cannot use static factories for a sub-class.
If you have a good dependency injection framework to build dependencies of a component, you may find that static factories don't add much.