This is true of most modern languages. That's not the problem package management is solving. Package management is solving the problem of how you decide which versions of which files to put into your project, considering the fact that dependencies may form a complex graph, not a simple tree.
A language can decide that it simply won't support complicated dependency graphs, which is a valid decision but is the opposite of having a nice package management story.