JPPF Issue Tracker
Please log in to bookmark issues
OPEN  Enhancement JPPF-547  -  Improvements to the handling of jobs classpath
Posted Sep 13, 2018 - updated Sep 13, 2018
lolo4j (lolocohen) has been working on this issue since September 13, 2018 (09:04)
Issue details
  • Type of issue
  • Status
  • Assigned to
  • Type of bug
    Not triaged
  • Likelihood
    Not triaged
  • Effect
    Not triaged
  • Posted by
  • Owned by
    Not owned by anyone
  • Category
  • Resolution
    Not determined
  • Priority
  • Targetted for
    icon_milestones.png JPPF 6.0
Issue description
The SLA of each JPPF job has a classpath attribute which allows the job to transport a set of jar files to dynamically add to its classloader when it is executed on a node.

There are currently a number of problems with the classpath itself and with the way it is handled by the node:
  • classpath elements refer to a "local" and a "remote" location. The semantics here is confusing and we propose to use "source" and "target" locations instead
  • there is currently no way to avoid downloading jar files if they already exists on the file system. We should allow a flow to allow it, make it default to false to preserve the existing behavior as a default
  • the notion of "force classloader reset" isn't clear ly explained and does not work as documented. This shouid be fixed

Furthermore, we propose to add a new sample which uses the maven-resolver APIs to list all (transitive) dependencies of a set of input maven coordinates, and builds a job classpath from the list. Upon execution of the job, the node will download the dependencies and add them to the job's classloader's classpath, in particular using the MavenCentralLocation class defined from Enhancement JPPF-539 - Location API - Maven central location.