For starters, how old is the battery? If it's original, it may just be time for a new one.
Here's a quick load test for the battery, but you'll likely need a helper to either hold/read the meter, or crank the engine:
Connect a meter directly on the battery posts and monitor it while you try to crank the engine. If the battery voltage drops like a rock when you try to crank, the battery is toast. If not, then you may have a bad (high resistance) connection somewhere that's dropping all the voltage when the heavy cranking current is drawn.
Repeat the test, but put one meter lead on the battery post and the other on the same terminal. Try to crank again. You DON'T want to see much if any voltage here. (This may not seem to make sense, but what it checks is the connection between the terminal and battery post - it doesn't take much resistance here to cause problems due to the huge current that the starter draws.) Do this test for both battery posts/terminals. Again, no or low voltage during cranking is what you want to see here.
If terminal connections are good, I'd next put the meter between the negative terminal and a metal part of the engine block (make sure it's a ground point, and that you have a solid connection.) Try to crank again. You should see little or no voltage - if you see more than a volt or so, you have a bad connection between the battery and ground. If you can get at the hot terminal on the starter solenoid, do the same for the positive lead.
I don't have a jeep yet, and so am unfamiliar with the actualy battery terminals used, but its possible to have a bad connection where the wire enters the terminal itself - checking the voltage drop across the cables can isolate that.