Why is my module downloading so many external libraries?

Hello all,

When I package my module using maven, the modl file ends up being 0.5 GB:

image

Inside the module, I can clearly see that a lot of libraries are being loaded into the module:

image

The problem is that I’m not using those libraries at all. I’m only using Ignition SDK, gson, slf4j and some apache commons libraries (for example I dont use jxbrowser at all). My imports are clean and I have tried deleting the libraries from my machine and from my project and reloading maven dependencies, but these libraries keep being downloaded and loaded into my modl.

Also using Intelij’s maven tool, I can see that the dependency “com.inductiveautomation.ignition:client-api:8.1.0” has most (if not all) the unwanted dependencies, including the jxbrowser ones.

If it helps, I generated the poms using the ignition maven plugin version 1.2.0, here is the client pom.xml:

client-pom.txt (2.6 KB)

Thank you in advance, I’m guessing this is a maven noob mistake

Probably because ignition is useing other libaries too.

Yes, Ignition uses other libraries that are loaded into the platform / sdk. I don’t think that means that I need to load all the complete libraries into my module. If that was the case, wouldn’t all modules be <500 MB? For example the Vision Module is only 5MB and I don’t believe there is a single module larger that 100MB.

Edit: The largest one is the Symbol Factory Module at 31 MB

May it have something to do with the scope of the dependencies? Some have compile scope and others have provided scope. Should all of them be in provided scope?

Edit: That was it, all ignition dependencies needed to be in provided scope :slight_smile: Now the module weights 3 MB

1 Like

You probably shouldnt mess with what the ignition library does.
Tho 500 MB does seem a bit big.
I guess you can try to remove stuff and see if it breaks or not. just dont load the module in a running project :stuck_out_tongue: