I've changed door hinge pins on a couple of XJs before but now it was time for my XJ. Unlike the others I've done, my XJ has rock rails and required a different approach than I've used before (the rails prevented drive the hinge pins upward). I also think the method I describe is a much easier and faster than what I've used before. I haven't changed the hinge pins on an XJ earlier than a '97, but from what I've seen, they are pretty much the same.
Also, I want to appologize for the clarity of the pictures, my camera doesn't do closeups very well.
I purchased a hinge pin replacement kit off Ebay for $10 including shipping. The Doorman part number is 38439 (also known as Help parts). This kit was a little different than some other kits I've purchased. I'll describe those differences later on.
First thing to do, if doing it yourself, is to support the door.
The hinges have a plastic spacer that must be removed. Using a Dremel with a small saw blade, cut 2 slots lengthwise in the spacer, then insert a screwdriver into the slots to separate the pieces.

Next put a metal cutoff wheel in the Dremel and cut through the center of the hinge pin. It'll have to be an angle cut because of the limited space.

Once the cut is made through the hinge pin, insert a flat blade screwdriver into the cut. A couple of raps with a hammer to the handle of the screwdriver and the hinge pin will usually loosen on both sides. Note the knurl on the bottm piece of the pin.

Temporarily, put a bolt through the top hinge then tackle the bottom hinge.
After the bottom hinge is loose, separate the hinge by pulling the door outward. Then, use something with a sharp edge (in this case a gasket scraper) to slip under the shoulder of the bushing and pry the bushing out. While the hinge is seperated, clean the surface, lubricate the new bushing and insert. Repeat for the bottom bushing.


The plastic spacer must be inserted next but make sure to do a test fit. I've found that the lengths on these vary from kit to kit. In the case of this kit, they were about 1/16" too long so I put a drum sander bit in the Dremel. Remove excess stock slowly as a snug fit is what is needed.
After the spacer is inserted and aligned with the holes (use the temporary bolt to aid in the alignment), align both hinge segments (door and frame) and keep together with the temporary bolt. Repeat the process for the hinge.
Now we're ready to insert the hing pin, but be aware. Not all kits have the proper pin. In the case of this kit, the knurl is not correct for an XJ. The factory puts the knurl on the pin using the same diameter. The pin that came in the kit has a shouldered area where the knurl was rolled. This make the pin impossible to insert as the knurl is too large in diameter to hammer into the hinge hole.
Using a stone in the Dremel, slowly remove enough of the knurl, and slightly angled, so that it would press into the hinge. Just don't take too much off as the pin will be sloppy in the hinge.
Once the knurl is ground properly, work the pin upward in the hinge while working the door. A little patience here is required. Once the pin is all the way through the hinge, take a small hammer and strike the head of the pin several times to seat the pin and expose the C-clip slot on the hinge pin. Once enough of the slot is exposed, install the C-clip. Repeat for the second pin, and the job is done.
Be sure to lube everything with a bit of Lithum or equivalent grease before final assembly. The job should take about 3 hours depending on tools and skill.