The ability to create self-replicating machines can give some very useful benefits. So what is the problem with creating this type of stuff?
Let's say we have two pieces of equipment - 3d printers and robotic arms. These items are already available and are easy to create.
It looks like they are enough to create self replicating machines. 3d printers are able to print any details for arms and printers. Robotic arms are able to assemble other arms and printers. Both equipment items are able to create almost any other kind of stuff.
Basically, both arms (i.e. manipulators) and 3d printers consist of servomotors, wires, chips and structural mechanical elements. They all can be easily 3d printed, that's no doubt I guess.
So we need only one set of 3d printers and arms with basic program to start the process. The more sophisticated programs can be added later to create almost any type of equipment from design. If there is enough rough materials, this process can be scaled indefinitely and allow to construct, gather resources etc.
So what is the problem with that scheme, why it is not used already yet everywhere?