0
votes

I'm trying to extend my Sonatype Nexus OSS instance with nexus-npm-repository-plugin.

I've tried either to compile from sources and install release from https://github.com/georgy/nexus-npm-repository-plugin/releases but no luck at all:

Despite it is built in Jenkins successfully, when i try to deploy bundle, my nexus instance tells me the following:

Name    Nexus npm repository plugin
Version 0.0.1
Status  Broken
Description Adds npm (https://www.npmjs.org/) capabilities to Nexus OSS
SCM Version b272d72cba8b6eadc8bade76eb71495ab60ba3af
SCM Timestamp   N/A
Site    http://nexus.bolyuba.com
This plugin was not able to be activated

 ... com.bolyuba.nexus.plugin:nexus-npm-repository-plugin:0.0.1 :: action=ACTIVATE result=BROKEN
       Reason: Problem installing: reference:file:/home/tomcat-nexus/sonatype-work/nexus/plugin-repository/nexus-npm-repository-plugin-0.0.1/

I dug into debug output and found out that despite bundle is provided with following structure:

nexus-npm-repository-plugin-0.0.1
                         \_nexus-npm-repository-plugin-0.0.1.jar
                         |_dependencies
                                        \_gson-2.2.4.jar

nexus instance tries to find a file META-INF/MANIFEST.MF directly in sonatype-work/nexus/plugin-repository/nexus-npm-repository-plugin-0.0.1/ instead of sonatype-work/nexus/plugin-repository/nexus-npm-repository-plugin-0.0.1/nexus-npm-repository-plugin-0.0.1.jar. I tried to extract contents of nexus-npm-repository-plugin-0.0.1.jar to sonatype-work/nexus/plugin-repository/nexus-npm-repository-plugin-0.0.1/ but had no luck.

Could you please tell me what exactly am I doing wrong and how to workaround this issue.

1

1 Answers

0
votes

You have to make sure that the version for Nexus referenced in the plugin source and the version of Nexus you are running are the same for starters. Try that first.

Update 2014-09-15: The plugin is actively being worked on by Sonatype. You should give it a spin. Check out the nexus-2.10.x branch. https://github.com/sonatype/nexus-npm-repository-plugin/tree/nexus-2.10.x and ensure to use a Nexus 2.10 build.