Because a chunk of our application is still coded using an obsolete library that is not supported by modern versions of JDeveloper, we are mired on an older version of JDev. This means that the standard methods for installing JDeveloper extensions don't work, because the website that you'd get the updates from has been retired. But there is a place that you can go to get JDeveloper extensions for older versions of the development system, assuming that you can find it, and then you can download the package to your local hard drive and install it from there.
Because we had upgraded to a slightly newer version of JDev a while back, all of the extensions that I had loaded into the older version were no longer available. And I needed the extension that would allow me to run JUnit tests from inside JDev so that I could do some fresh test development. This resulted in my swearing, finding the package I needed, downloading it, and discovering that the package wouldn't install.
You see, the package insisted on having a particular *exact* version of JDev to install against and *our* version of JDev has been patched with some fixes, so it is slightly newer than the version that the package wants to install against. This is now starting to tick me off.
Well, the package to install is distributed as a Zip file, so let's open it up and see what's inside it. Ah, there's a likely looking XML file. Let's see what's there. Yup, there are the oldest and newest versions that you can install against. Let's bump that newest version up to the same one as mine, zip the archive back up, and see how this works.
Happily, it did and I can now run JUnit tests again from inside JDev.
As I said, things should be simpler.