Learn to make game engine from scratch or learn existing game engine?

Hello awesome JGO people,

I have been programming for the past 3 years. I have mainly only worked on Minecraft mods for Bukkit/Spigot. I have learned a lot about programming and I feel I have enough experience now to start trying to develop my own small game. As far as Minecraft goes, I spent a year making a MC RPG which turned out nice, but not nice enough to make a server out of it.

I want to stop wasting my time creating MC mods. If I am going to learn to make my own games with Java this is the time to start. I have purchased 4 books on Java Game programming. Each book has similar approaches to solving problems. However, as I work through the books and learn new techniques I ask myself if it is really worth it. I wonder if my time would be better spent learning an existing game engine rather than reinventing the wheel. My thoughts are if a game engine has been seen, debugged, and worked on by hundreds if not thousands of people, then why not use existing work. Why not learn their engine and spend more time making a game then learning about code I will never use because an existing game engine is what I will use in the long run.

What do you, a fellow programmer, game lover, and enthusiast, think is the best path to take?

Thank you for your guidance!
unenergizer