The server project wires together the different libraries composing James to provide a running service. It introduces for example Netty wrappers for protocols, the Mail Queue component as well as Mailet container for mail processing, and storage API for server related storage. Wiring is done thanks to Inversion of Control using either Guice or Spring.

This documentation is intended to be an introduction to the concepts behind the Apache James Server usage, as well as a guide to install, configure , manage, monitor and develop Apache James Server.

Download Apache James Mail Server 3.7.0 and quick-start it!

Apache James Server 3.7.0

You can also have a look to the last stable version

Apache James Server 3.7.0 represents the leading edge of development. This code stream has many more features than the 2.3 code, but is not be as well tested in production. Reasonable configuration compatibility has been retained with 2.3.2.

Apache James Server 3.7.0 and following versions require Java 1.11. A migration guide for users willing to upgrade from 2.3 to 3.7.0 is available. If relying on Guice wiring, you can use some additional components (Cassandra, OpenSearch, ...).