2010-02-23 173 views
1

打我已經開發了Java中的SDK的,我也有一個運行。我想用我的運行時罐來限制開發。我的SDK是節點鎖定的,但我不想讓運行時節點鎖定,這樣我的客戶端就可以免費使用我的SDK開發應用程序,並使用運行時在客戶端銷售和運行。我沒有寫我自己的編譯器,我不想。任何人都可以提出一個方法來實現這一點。與Java編譯

+0

這是一個社會不是一個技術問題。 – cletus 2010-02-23 14:56:39

+0

即使您能夠實現此目標,您如何建議阻止您的客戶編寫/分發只需將調用重定向到API的適配器? – Thimmayya 2010-02-23 17:54:43

回答

0

我是否正確理解這一點:您想要找到一種方法來允許免費分發運行用SDK開發的程序所需的JAR,但希望阻止人們使用這些運行時JAR來開發新的應用程序?

如果是這樣,並且如果SDK沒有提供支持開發但在運行時不需要的基本功能,那麼我認爲最好的方法是使運行時不作爲獨立JAR分發。相反,讓SDK提供一個捆綁運行時和應用程序的構建功能,並將一些代碼插入到運行時庫中,以檢查該特定應用程序的存在並拒絕以其他方式運行。

+0

SDK確實提供運行時提供的全部功能。但我的SDK價格昂貴,我希望供應商從我那裏購買它,這就是爲什麼它是節點鎖定的。但使用該SDK,供應商的客戶無法運行他們從供應商處購買的應用程序。所以他們需要我的運行時間是免費的。但後來問題是我的供應商的客戶將開始在該運行時開發新應用程序,只需在引用中添加這些罐。我想避免這種情況。 – 2010-02-23 15:23:29

+0

底線是我想停止編譯用戶代碼時,當我的運行時罐在引用,並允許應用程序運行,這是開發使用我的SDK和使用運行時罐運行。 – 2010-02-23 15:24:08