码迷,mamicode.com
首页 > 其他好文 > 详细

Sonatype Nexus Professional Crack,Maven私服仓库管理

时间:2015-02-13 08:06:32      阅读:612      评论:0      收藏:0      [点我收藏+]

标签:

 01. Sonatype Nexus简介

 ? Sonatype Nexus(以下简称Nexus)是Maven仓库管理器,使用Maven,你可以从Maven中央仓库下载所需要的构件,但这通常不是一个好的做法,你应该在本地架设一个Maven仓库服务器,在代理远程仓库的同时维护本地仓库,以节省带宽和时间,Nexus就可以满足这样的需要。此外,Nexus还提供了强大的仓库管理功能,构件搜索功能,它基于REST,友好的UI是一个extjs的REST客户端,它占用较少的内存,基于简单文件系统而非数据库。这些优点使其日趋成为最流行的Maven仓库管理器。

 ? Nexus分为开源版和专业版,其中开源版本基于CPLv3许可证,其特性足以满足大部分Mavan用户的需求。Nexus专业版本是需要付费购买的,除了开原版本的所有特性之外,它主要包含一些企业安全控制,发布流程控制等需要的特性。

 ? 官网:http://www.sonatype.org/nexus/

 ? 开源版:http://www.sonatype.org/nexus/go/

 ? 专业版:http://www.sonatype.com/downloads/products/nexus/nexus-professional-bundle-latest.zip

 ? Supporthttps://support.sonatype.com/categories/20112427-Sonatype-Nexus

 02. 专业版破解思路方法

 ? 将日志级别设置为TRACE后启动,TRACE日志记录SYSTEM org.sonatype.licensing.trial.internal.DefaultTrialLicenseManager - verifyLicense方法出现NoLicenseInstalledException和LicensingException,定位在license-bundle.jar文件中,异常语句为CustomLicenseContent localCustomLicenseContent = (CustomLicenseContent)new xjx(paramTrialLicenseParam, this.bwp).mif();

 ? ? 技术分享  ? ? 技术分享

 ? 分析license-bundle.jar包结构,可以发现internal子包中均为接口实现类,License结构如下图。

   技术分享

 ? 1.异常语句若执行成功,返回值主要用于localLicenseKey.populateFromLicenseContent(localCustomLicenseContent);

 ? 2.接口实现类AbstractLicenseKey中的populateFromLicenseContent方法,调用了License接口中定义的7个setXxx(String)方法和1个子类实现方法parseExtraContent。

 ? 3.子类DefaultLicenseKey中的parseExtraContent方法对授权信息进行了重校验,根据校验结果setEvaluation,设置自定义属性FeatureSet。

 ? 分析nexus-licensing-extension.jar包结构,可以发现Feature结构如图,并且存在实现类。

   技术分享

 ? 于是可以自定义verifyLicense方法返回的License,并根据License接口方法设置license接口中的9个属性。

key.setContactName("zoakerc");
key.setContactCompany("http://my.oschina.net/zoakerc");
key.setContactEmailAddress("zoakerc@gmail.com");
key.setContactTelephone("11011001110");
key.setContactCountry("China");
key.setEvaluation(false);
key.setExpirationDate(new Date(8128 - 1900, 1, 1));
key.setEffectiveDate(new Date(2015 - 1900, 1, 1));
FeatureSet fs = new FeatureSet();
fs.addFeature(new NexusProfessionalFeature());
key.setFeatureSet(fs);
//CustomLicenseContent localCustomLicenseContent = (CustomLicenseContent) new xjx(paramTrialLicenseParam, this.bwp).mif();
//if (bool) {this.wab.trace("verifyLicense (3) content={}", localCustomLicenseContent);}
//key.populateFromLicenseContent(localCustomLicenseContent);
//} catch (LicenseContentException localLicenseContentException) {
//    if (bool) {this.wab.trace("verifyLicense", localLicenseContentException);}
//    throw itm(key, localLicenseContentException);

 03. 破解成功后清理目录重启Nexus

清理目录
sonatype-work/nexus/*
nexus-professional-2.11.1-01/logs/*
nexus-professional-2.11.1-01/tmp/*

  查看TRACE日志,发现未出现异常

  打开http://localhost:8081/nexus/,使用admin登陆后查看license信息,破解成功。

  ? 技术分享



Sonatype Nexus Professional Crack,Maven私服仓库管理

标签:

原文地址:http://my.oschina.net/zoakerc/blog/378269

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!