Hi! There is a feature in Ignite called DeploymentSpi [1], that allows adding and changing implementation of compute tasks without nodes' downtime. The only usable implementation right now is UriDeploymentSpi [2], which lets you provide classes of compute tasks packaged as an archive of a special form. And this special form is the worst part. GAR file is just like a JAR, but with some additional meta info. It may contain an XML with description of tasks, a checksum and also dependencies.
We barely have any tools to build these files, and they can be replaced with simple uber-JARs. The only tool we have right now is IgniteDeploymentGarAntTask, which is not documented anywhere, and it's supposed to be used from a long-forgotten Apache Ant build system. I don't think we need this file format. How about we deprecate and remove it and make UriDeploymentSpi support plain JARs? [1] https://apacheignite.readme.io/docs/deployment-spi [2] https://ignite.apache.org/releases/latest/javadoc/org/apache/ignite/spi/deployment/uri/UriDeploymentSpi.html Denis