Is it possible to Create Enterprise Archetict Extensions using Java? [closed]


I am wondering if it is possible to build an AddIn Extension for Enterprise Architect in Java.

I am searching, but I have not found any concrete answers. Could someone give me a recommendation for this situation?


Well it looks like, you can't build Enterprise Architect AddIns just using plain java code. There's a readme.txt file to be found in your EA installation's Java API directory:


Enterprise Architect Java API Readme

The files in this directory can be used to access Enterprise Architect's COM automation API from Java. To use this API, please observe the following set-up procedure.

<ol><li>Copy the file SSJavaCOM.dll into any location within the Windows PATH. For example, the windows\system32 directory. </li> <li>Copy the eaapi.jar file to a location in the Java CLASSPATH or where the Java class loader can find it at run time</li> </ol>

Limitations and known issues:

<strong>1. You cannot currently use this API to write plug-ins for EA. It is only suitable for accessing the automation server API.</strong><br /> 2. Due to the nature of Java interacting with native methods and COM, garbage collection is not optimal. Native COM classes and memory allocated for these is not seen by the Java garbage collector, so you should explicitly invoke a garbage collection from time to time when working with many objects using the Java API. This will ensure native memory is freed in a timely fashion.


You may be able, to provide a java code based .NET assembly. I'm not so well versed with this, but IIRC I've been reading it's possible.

IMHO the most straightforward way to build an AddIn is to use <a href="/questions/tagged/c%23" class="post-tag" title="show questions tagged 'c#'" rel="nofollow">c#</a>. Have a look at Geert Bellekens Blog: <a href="http://bellekens.com/2011/01/29/tutorial-create-your-first-c-enterprise-architect-addin-in-10-minutes/" rel="nofollow"><strong><em>"Tutorial: Create your first C# Enterprise Architect addin in 10 minutes"</em></strong></a>

Here are <a href="http://www.sparxsystems.com/cgi-bin/yabb/YaBB.cgi?num=1387457219/0#0" rel="nofollow">some more opinions</a>, why java doesn't seem to be a good choice as the core language to develop an Enterprise Architect AddIn.


  • Unable to start Selenium Safari WebDriver via python3
  • Is it possible to set breakpoints automatically (e.g. by regular expression) in VS2008?
  • Is there an advantage in using SOAP UI over REST-assured to automate REST Services for CI
  • Stored Procedure with multiple IN Parameter
  • Conversion failed when converting the nvarchar value 'SELECT * FROM
  • if I want to find what's referencing an object in SQL Server, is searching syscomments comprehe
  • HSQLDB Statement and Java NaN doubles
  • How to escape colon (:) character while executing native SQL queries against an Informix database us
  • Autohotkey script running program with command line arguments
  • INSERT EXEC Statement cannot be nested [duplicate]
  • Get used tables from sql query [duplicate]
  • Available space left on drive - WinAPI - Windows CE
  • Translating C# to PowerShell in InterIMAP
  • Most efficient way to move table rows from one table to another
  • pillow imaging ImportError
  • Zoom in and out of jPanel
  • std::remove_copy_if_ valgrind bytes in block are possibly lost in loss record
  • Firefox Extension - Monitor refresh and change of tab
  • Saving Changes After In-App Purchase Has Been Purchased
  • Very simple C++ DLL that can be called from .net
  • Functions in global context
  • ilmerge with a PFX file
  • Sony Xperia Z Tablet not found by adb
  • script to move all files from one location to another location
  • ILMerge & Keep Assembly Name
  • Javascript convert timezone issue
  • Symfony2: How to get request parameter
  • Why is the timeout on a windows udp receive socket always 500ms longer than set by SO_RCVTIMEO?
  • To display the title for the current loaction in map in iphone
  • Apache 2.4 - remove | delete | uninstall
  • XCode can't find symbols for a specific iOS library/framework project
  • jqPlot EnhancedLegendRenderer plugin does not toggle series for Pie charts
  • Run Powershell script from inside other Powershell script with dynamic redirection to file
  • How do I rollback to a specific git commit
  • Is there a mandatory requirement to switch app.yaml?
  • Windows forms listbox.selecteditem displaying “System.Data.DataRowView” instead of actual value
  • Unit Testing MVC Web Application in Visual Studio and Problem with QTAgent
  • Benchmarking RAM performance - UWP and C#
  • How do you join a server to an Active Directory (domain)?
  • Busy indicator not showing up in wpf window [duplicate]