StarUML是用nodejs寫的。確切的說是用Electron前端框架寫的。新版本中全部的starUML源代碼是經過asar工具打包而成。確切的代碼位置在安裝目錄下的\StarURML\resources\app.asar」前端
咱們能夠經過asar工具解壓修改達到破解目的。具體操做以下:java
cnpm install -g asar
asar extract app.asar app
真正的驗證license的代碼在app\src\engine\license-manager.js。node
這是個典型的javascirpt的Promise。啓動後會調用validate函數檢查license。npm
checkLicenseValidity () {
this.validate().then(() => {
setStatus(this, true)
}, () => {
// 原來的代碼,若是失敗就會將狀態設置成false
// setStatus(this, false)
// UnregisteredDialog.showDialog()
//修改後的代碼
setStatus(this, true)
})
複製代碼
參照上面的代碼將reject的callback原代碼註釋掉。換成setStatus(this, true) 這樣不管你註冊與否都驗證成功。 4. 從新打包替換原來的app.asarbash
asar pack app app.asar
前端框架
啓動StarUML 開始工做吧app