破解JIRA3.3

以下原文转自http://www.blogjava.net/freddychu/archive/2005/11/05/18319.html


昨天发现缺陷管理工具JIRA,目前版本是3.3.3,安装使用了一下。感觉很好。
下载地址: http://www.atlassian.com/software/jira/
我下载的是JIRA Enterprise: Evaluation版本,同时申请一个30的Licence。
破解比较简单,有关Licence的代码在atlassian-extras-0.7.10.jar中。
1、反编译包中的文件:com.atlassian.license.DefaultLicense.class。改成下面:
// Decompiled by DJ v3.8.8.85 Copyright 2005 Atanas Neshkov  Date: 2005-11-5 17:41:28
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name:   DefaultLicense.java

package com.atlassian.license;

import java.util.*;

// Referenced classes of package com.atlassian.license:
//            License, LicenseType

public class DefaultLicense
    implements License
{

    public DefaultLicense(Date dateCreated, Date datePurchased, String organisation, LicenseType licenseType, int users)
     {
        this.dateCreated = dateCreated;
        this.datePurchased = datePurchased;
        this.organisation = organisation;
        this.licenseType = licenseType;
        this.users = users;
    }

    public Date getDateCreated()
     {
        return dateCreated;
    }

    public Date getDatePurchased()
     {
        return datePurchased;
    }

    public String getOrganisation()
     {
        return organisation;
    }

    public LicenseType getLicenseType()
     {
        return licenseType;
    }

    public String toString()
     {
        return licenseType.getNiceName() + " licensed to " + organisation;
    }

    public boolean isExpired()
     {
        return false;

    }

    public Date getExpiryDate()
     {
        return null;
    }

    public boolean isLicenseLevel(Collection levels)
     {
        for(Iterator iterator = levels.iterator(); iterator.hasNext();)
         {
            String level = (String)iterator.next();
            if(getLicenseType().getDescription().toLowerCase().indexOf(level.toLowerCase()) != -1)
                return true;
        }

        return false;
    }

    public int getUsers()
     {
        if(licenseType.requiresUserLimit())
            return users;
        else
            return -1;
    }

    public static long EVALUATION_PERIOD = 0x9fa52400L;
    protected Date dateCreated;
    protected Date datePurchased;
    protected String organisation;
    protected LicenseType licenseType;
    private int users;

}


其实就该了两个方法:

    public boolean isExpired()
     {
        return false;

    }

    public Date getExpiryDate()
     {
        return null;
    }

2、把编译好的class文件复制到atlassian-extras-0.7.10.jar中,覆盖原来文件。
3、启动服务器,成功。
我把我破解后的class附上:http://www.blogjava.net/Files/freddychu/DefaultLicense.zip


你可能感兴趣的:(jira)