nbscala icon indicating copy to clipboard operation
nbscala copied to clipboard

Under Gentoo, "impl"-type netbeans module dependencies prevent plugins from installation

Open pvgoran opened this issue 8 years ago • 3 comments

In Gentoo, NetBeans is compiled from sources, so its modules (at least some of them, including org.netbeans.modules.extexecution.base) get OpenIDE-Module-Implementation-Version values (in MANIFEST.MF) that depend on the build time, like this: 20161207-unknown-revn. This prevents "impl"-type modules dependencies that are used in scala.console and scala.sbt from matching, because they want the implementation version of org.netbeans.modules.extexecution.base from the official NetBeans modules (which is something like 201609300101).

So I can't install the modules in NetBeans 8.2 under Gentoo. I tried akochnev's build, and I tried to compile nbscala from git.

pvgoran avatar Dec 07 '16 14:12 pvgoran

After investigation, it looks like the "impl"-type dependencies are not needed. I replaced usages of org.netbeans.modules.extexecution.base.ExternalProcessBuilder with org.netbeans.api.extexecution.ExternalProcessBuilder in these two modules, after that the "impl"-type dependencies could be safely removed. This way, I managed to compile and install the modules.

Is it possible to attach a patch here? Or the only way is to fork and create a pull request?

pvgoran avatar Dec 07 '16 14:12 pvgoran

Ok, here is the patch. (I had to rename to .txt before GitHub allowed it.)

remove-impl-module-dependencies.patch.txt

pvgoran avatar Dec 07 '16 15:12 pvgoran

@pvgoran - nice work on tracking down the replacement for the external execution module that became an API! I'm a bit surprised that the rest of the plugin worked when you removed the other implementation dependencies, but it certainly is possible that they're out of date. I'll try out your patch and create a PR for @dcaoyuan to merge in

akochnev avatar Dec 10 '16 20:12 akochnev