I'm sure this has been written up, but here's the summary version:
The engine itself will fit physically. The block is the same. But ...
Your 1990 XJ is the last year of the Renix injection/ignition system. The 94 Grand has a Chrysler injection/ignition. Not only are all the electronics different, the head and manifolds are different. There are a couple of ways to approach making this work.
The most elegant, most sophisticated way ... which of course involves the most work ... is to update your vehicle to accept the computer and engine room wiring from the Grand so that you get a complete 1994 engine and fuel delivery system. That would involve a lot of wiring. Only you can decide if you wish to embark on that.
Next down would be to drop in the '94 engine complete, swap the distributor and CPS in from the '90 to mate up with your vehicle electronics, and adapt the '90 throttle body to the '94 manifold OR adapt the '90 intake manifold to fit the '94 head (the ports are higher and the locating studs are also located differently).
Or you could keep your '90 wiring, induction and injection totally stock by stripping the manifolds and head off the '94 engine and use it as a short block with your original '90 head, manifolds, and peripherals.
So ... what you propose to do can be accomplished, but it is not a direct, bolt-up swap and that's why it is not listed as such in the exchange books.
Oh -- almost forgot. Because the '90 CPS operates differently electronically than the 'Chrysler CPS, if you wish to maintain the original '90 electrics you would also have to swap the '90 flexplate onto the new engine because they aren't the same. The only way to use the '94 flexplate would be to convert the vehicle to the Chrysler ignition/injection system.