2014-10-09 42 views
0

我想知道是否有可能在Java中爲Enterprise Architect構建AddIn擴展。是否可以使用Java創建企業Archetict擴展?

我在尋找,但我還沒有找到任何具體答案。有人能給我一個這種情況的建議嗎?

+1

總之,只要您使用.NET兼容的Java實現,就可以了。查看[Enterprise Architect AddIn模型文檔](http://www.sparxsystems.com/enterprise_architect_user_guide/10/automation_and_scripting/creatingaddins.html)。 – 2014-10-09 22:32:44

+0

如何將代碼鏈接到EA加載項管理器? 我的意思是:部署加載項? – 2014-10-09 23:01:45

回答

2

看起來,你不能用普通的java代碼來構建Enterprise Architect AddIns。有一個readme.txt文件在你的EA安裝的Java API目錄中找到:

企業架構師的Java API自述

此目錄中的文件可以被用來從Java訪問Enterprise Architect的COM自動化API。要使用此API,請遵守以下設置步驟。

  1. 將文件SSJavaCOM.dll複製到Windows PATH中的任何位置。例如,windows \ system32目錄。
  2. 複製eaapi.jar文件的位置在Java CLASSPATH或者Java類加載器可以在運行時

限制和已知問題找到它:

1.您目前不能使用這個API來編寫EA的插件。它僅適用於訪問自動化服務器API。
2.由於Java與本地方法和COM交互的本質,垃圾收集並不是最優的。本地COM類和爲它們分配的內存不會被Java垃圾收集器看到,所以您應該在使用Java API處理許多對象時不時顯式調用垃圾回收。這將確保本地內存以及時方式釋放。

您可以提供基於Java代碼的.NET程序集。我對此不甚瞭解,但是IIRC我一直在閱讀它。

恕我直言,建立一個AddIn最直接的方法是使用。看看Geert Bellekens博客:"Tutorial: Create your first C# Enterprise Architect addin in 10 minutes"

這裏是some more opinions,爲什麼java似乎不是一個很好的選擇作爲開發Enterprise Architect AddIn的核心語言。