---
title: "Class Loader Control in Mule · Appnovation"
url: "https://www.appnovation.com/insights/class-loader-control-mule"
description: "How to control class loading in Mule projects to resolve conflicts with system-level httpcore and httpclient packages in Anypoint Studio."
---

Article

# Class Loader Control in Mule

[![](https://cdn.sanity.io/images/ey850001/production/36eb314260fb474cacc1b3a473d7e8402d997898-68x68.png?w=68&auto=format) Appno Blogger Appnovation Coop](/people/appno-blogger.md) Jul 22, 2015  
 2 min read 

![Class Loader Control in Mule](https://cdn.sanity.io/images/ey850001/production/3a719f0259a18a838f25dcac300446f277af5142-1400x400.jpg?w=1400&auto=format) 

As we know, Mule is a java-based platform. And external java package might be needed for a mule project. For latest Anypoint Studio with runtime v3.6.2, there are two packages are included in the system level: httpcore-4.3.5.jar and httpclient-4.2.jar

In my [MuleSoft development](/services/technology-platform-development.md) project with maven, I need to send out http request via groovy script which will need some classes in htttpclient and httpcore. The problem is that the classes in httpclient(4.3.5) need to work with classe org.apache.http.util.Args coming from httpcore with the version over 4.3.

To solve this, the http packages with the higher version would be added as dependencies in pom.xml. In my project, I choose the version 4.4, and httpclient-4.4.jar and httpcore-4.4.jar are imported. Actually, you can choose to use any version after 4.2.

Then [MuleSoft developers](/services/technology-platform-development.md) need to let Mule know that certain packages must be loaded from child path(the imported packages) other than from the system level (included by Mule). A simple setting in mule-deploy.properties would be inserted:

loader.override=-org.apache.http

Two questions might be raised: 1. Why not just import httpcore (over 4.3) and override the specific class like the following: loader.override=-org.apache.http.util.Args 2. Why to import two packages (httpclient and httpcore)

The truth is that when only the class Args is overridden, Mule would still call the classes from httpclient from the system level and it will search the references at the same level. So we need to import both httpclient and httpcore with the same version, and all the classes from those two packages would be overridden. In this way, all the classes would come from the child path.

The control of the class loader introduces a new way to solve the conflict between different versions of packages in Mule.

[![](https://cdn.sanity.io/images/ey850001/production/36eb314260fb474cacc1b3a473d7e8402d997898-68x68.png?w=68&auto=format) Appno Blogger Appnovation Coop · Appnovation](/people/appno-blogger.md) 

## Keep reading

[![What is Sovereign AI](https://cdn.sanity.io/images/ey850001/production/a5889abdd5e80376912546622e046e3fbef234b4-2496x1664.png?w=640&auto=format)](/insights/what-is-open-source-sovereign-ai.md)

 Article · 7 min AI 

### [What Is Open Source, Sovereign AI?](/insights/what-is-open-source-sovereign-ai.md)

Every company is encouraging more AI, and almost every AI bill is climbing. Sovereign AI is about two kinds of control: over your data and over your costs. Here's why open source sits at its foundation.

[Iain MacNeil](/people/iain-macneil.md) Article 

[![AI-first experience design](https://cdn.sanity.io/images/ey850001/production/8bbc2418e87924ef10f36115478a2e10d5bed95e-1584x624.jpg?w=640&auto=format)](/insights/how-build-ai-first-experience-without-throwing-out-everything-youve-already-built.md)

 Article · 6 min AI Sep 10, 2026 

### [How to Build an AI-First Experience Without Throwing Out Everything You've Already Built](/insights/how-build-ai-first-experience-without-throwing-out-everything-youve-already-built.md)

Users now expect a direct answer, not a list of links to click through. Here's how organizations can layer an AI-First experience onto their existing website or app, in weeks rather than years.

[Andrew Douglas](/people/andrew-douglas.md) Article 

[![What Becomes Possible When AI Can Read All the Data](https://cdn.sanity.io/images/ey850001/production/c28ab0bd26753421ee42937e13adc7a7f19b47f0-1296x510.jpg?w=640&auto=format)](/insights/what-becomes-possible-when-ai-can-read-all-data.md)

 Article · 4 min AI Sep 09, 2026 

### [What Becomes Possible When AI Can Read All the Data](/insights/what-becomes-possible-when-ai-can-read-all-data.md)

Most of the world's data has never been analyzed, only sampled. AI changes that. How AI-ready data platforms unlock questions no one could ask before.

[Appnovation](/people/appnovation.md) Article 

## Get the thinking,  
*before everyone else.*

One considered email a month. New essays, field notes from live engagements, and the occasional strong opinion. No noise.
