Malfunction Light won't go away

A few weeks ago, the malfunction light came on, in my jeep. My trusty mechanic plugged in the computer, and it said it had something to do with Injector #7. But he checked it and thought it looked fine. So to test it out, he switched injector 7 and 5. The light was reset. A few days later, the malfunction light came back on, again saying problem with injector 7… Then the car started to vibrate a little. And a lot. And the battery died while I was on vacation. (No idea of all those events were related). The battery was replaced, and the injector coil too. Alas, the light is on again, the car vibrates a little… Any thoughts?

The trouble code is probably P0307 for “misfire #7 cylinder”. This can be caused by fuel, or spark. Since it is not caused by the fuel injector (that was replaced), that leaves spark or cylinder malfunction.
Your mechanic should check spark on #7. Start with a new spark plug. If it still misfires, perform a compression check on #7 cylinder. If the compression is too low, it will misfire. Valves or/and piston rings (or, other damage) can cause low compression.

“Your mechanic should check spark on #7. Start with a new spark plug.” and he should also check the plug wire.

…and he should also check the wiring & connector for injector # 7 - the injector moved, but its connector didn’t.

If you can post back with what the actual code was. P0307 is a good guess but it would be good to know.

Cigroller has an excellent point: the mechanic needs to check that the command to the fuel injector to spray gets there. This is very simply done with a 'noid test light, or multimeter, or sense of touch (click), or sense of hearing (click); but, not by sense of smell…unless…