Creating a custom packaged version of Archi in 4.9

Started by mjtapp, November 04, 2021, 20:53:41 PM

Previous topic - Next topic

mjtapp

Hi,

I've been attempting to create a packaged version of Archi 4.9.1 following the instructions here - https://github.com/archimatetool/archi/wiki/How-to-create-a-packaged-version-of-Archi-(including-configuration-and-plugins)#add-plugins - and it mostly works, except I can't seem to get it to recognise plugins provided - specifically coArchi & JArchi.

I've followed the instructions and dropped the .jar files for the plugins into the plugins folder, (and a few different variations to this too) but they are never recognised when Archi starts.

I saw something where you had some issues around plugins and Eclipse a while back so I was wondering if there is something else I need to be doing? Any ideas?

Thanks

Michael

Phil Beauvoir

Hi Michael,

it won't work if you put additional plug-ins in the "plugins" folder. They must go in a folder named "dropins" at the same level:

Archi
  ---dropins  <- Here
  ---plugins
If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.

mjtapp

Aha, thanks Phil, that's what I was missing :). I see you've updated the wiki page too, thanks heaps.

Phil Beauvoir

An update to this.

Copying the *.jar files into the "plugins" folder used to work. That is until I broke it. Will be fixed in the next version of Archi.

Having said that, it is still better to put them in the "dropins" folder so they show up in the Plugins Manager.
If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.

Jean-Baptiste Sarrodie

Hi,

QuoteHaving said that, it is still better to put them in the "dropins" folder so they show up in the Plugins Manager.

I'm not able to test at the moment so I have a question: do you mean that we can have both a user "dropins" folder and a main "dropins" folder in the Archi installation directory at the same time?

If yes, I agree that's the best way to do it, if no, being able to ship custom plugins into the main "plugins" folder is needed (at least I rely on it for our "corporate" Archi distribution in which I ship coArchi & jArchi by default.

Regards,

JB
If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.

Phil Beauvoir

Yes, in fact three possible locations. See the code comments at https://github.com/archimatetool/archi/blob/master/com.archimatetool.editor/src/com/archimatetool/editor/p2/DropinsPluginHandler.java

Being able to put them in the "plugins" folder was a side effect of the "artifacts.xml" being present in the root folder. For Archi 4.9 I removed that in the binaries because I thought it was not used for anything. Seems it has some meaning for Eclipse.

But the "plugins" folder is not a good place to put them for the Plugins Manager because it doesn't list them in the dialog. If it did it would list all plugins and we don't want that.
If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.

mjtapp

One more question related to this, but on a slightly different topic, for scripting, I'd like to include a set of scripts in the build.

There was a post a while back where Phil talked about putting them in the folder defined by the preferences in Archi, which is fine after the fact, but if I want them to be picked up by the extraction of the build (or I guess more precisely, when Archi starts and it creates the folder where config etc are created for the first time), where do I put those scripts in the build to make that happen?

Thanks

Michael

Jean-Baptiste Sarrodie

Hi,

Quote from: mjtapp on November 10, 2021, 04:52:27 AMbut if I want them to be picked up by the extraction of the build (or I guess more precisely, when Archi starts and it creates the folder where config etc are created for the first time), where do I put those scripts in the build to make that happen?

I'd to be able to do it too, but for the moment you can't do it.

Regards,

JB
If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.

mjtapp

Aha, thanks JB, I had a feeling you were going to say that :). No problem, I'll just to work around it.

Alexis_H

Hi,

I'm facing trouble to package a custom version of Archi-5.4.2 regarding the plugins / dropins folders :
  - following the Wiki page doc, I create a dropins/ folder at the same level as the plugins folder (ie : ROOT\PKGNAME\dropins)
  - I copy in it the *.archiplugin files

But when I launch Archi.exe I don't see the plugins in the 'Manage Plugins..' popup and they are not loaded indeed.

In the previous packages versions I did used to unpack the *.archiplugin directly in the plugins/ folder which worked but dropins/ seems the prefered way

What am I missing ?

Regards,
Alexis

Phil Beauvoir

@Alexis_H Did you customise the Archi.ini file? If so, paste it here. Did you unpack (unzip) the contents of the *.archiplugin files?
If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.

Alexis_H

Hi @Phil Beauvoir,

Yes a few custom entries in my Archi.ini (costom splash screen..) :

-startup
plugins/org.eclipse.equinox.launcher_1.6.800.v20240513-1750.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.2.1000.v20240507-1834
-cleanConfig
--launcher.defaultAction
openFile
-showSplash
custom_splash.bmp
-pluginCustomization
custom_defaults.prefs
-eclipse.keyring
@user.home/AppData/Roaming/Archi/secure_storage
-vmargs
-Dosgi.requiredJavaVersion=17
-Dfile.encoding=UTF-8
-Declipse.p2.data.area=@config.dir/p2
-Ddata.location=@user.home/Documents/Archi
--add-modules=ALL-SYSTEM
-Dosgi.instance.area=@user.home/AppData/Roaming/Archi
-Dosgi.configuration.area=@user.home/AppData/Roaming/Archi/config
-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=%user.home%/AppData/Roaming/Archi/dropins

Phil Beauvoir

Again - did you unpack (unzip) the contents of the *.archiplugin files?

You could also try deleting this line:

-Dorg.eclipse.equinox.p2.reconciler.dropins.directory=%user.home%/AppData/Roaming/Archi/dropins
If you value and use Archi, please consider making a donation!
Ask your ArchiMate related questions to the ArchiMate Community's Discussion Board.

Alexis_H

QuoteAgain - did you unpack (unzip) the contents of the *.archiplugin files?

No, I just dropped 4 raw xxx.archiplugin files in the dropins folder, and that was my mistake.

Juste realized I had to unzip them before..

Thanks.