Cytoscape App and external Dependencies

Skip to first unread message

Mathias Kemeter

Sep 9, 2021, 4:10:01 AMSep 9
to cytoscape-app-dev
Hi everyone,

I have developed a database connectivity app for SAP HANA, which requires the JDBC client for SAP HANA to be on the class path. With some trial&error I found, that the plugin works fine when I copy the ngdbc.jar (the JDBC client) to "/Applications/Cytoscape_v3.8.2/framework/lib/openjfx/mac".

Now, I would like to submit the app to the app store to make it more convenient (and visible) for users. Is there any best practice how to deal with the external dependency?

Many thanks,

Scooter Morris

Sep 9, 2021, 11:25:42 AMSep 9
to cytoscape-app-dev
Hi Mathias,
   Sure -- what you need to do is to add (embed) the dependency to your jar, and the trick to doing that is all in your pom.xml.  There are a number of apps that embed dependencies -- one of mine, clusterMaker2, has quite a number of them, so you can take a look at the pom here:  In particular, look at the <configuration><instructions> for the org.apache.felix plugin and then the <dependency> for org.ojalgo.  The net result of that will be a jar for your app that has all of your dependent jars included.

-- scooter

Mathias Kemeter

Sep 13, 2021, 10:44:14 AMSep 13
Thank you Scooter! Your suggestion almost worked. I am still facing issues, because my packaged dependency is a multi-release jar and for some reason it is fetching the incorrect release for my Java version. But I assume that this issue is not in any way related to Cytoscape specifics.


You received this message because you are subscribed to a topic in the Google Groups "cytoscape-app-dev" group.
To unsubscribe from this topic, visit
To unsubscribe from this group and all its topics, send an email to
To view this discussion on the web visit
Reply all
Reply to author
0 new messages