apache james


本站和网页 https://james.apache.org/ 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

Apache James
The Apache Software Foundation
James Enterprise Mail Server
Emails at the heart of your business logic
About
Get Started
Roadmap
Last Posts
Community
Documentation
Downloads
James stands for
Java Apache Mail Enterprise Server!
It has a modular architecture based on a rich set of
modern
and
efficient
components which provides at the end
complete, stable, secure and extendable Mail Servers running on the JVM
Create your
own personal solution
of emails treatment by assembling the components you need thanks to the Inversion of Control mail platform offered and
go further customizing filtering and routing rules using
James Mailet Container
James from a technical point of view
Complete portability
(100% pure JVM: Java & Scala)
Built with Java 11
and running on the
Java RE 11
James Components:
Emailing protocols:
SMTP, LMTP, POP3, IMAP, ManageSieve, JMAP
Mailet container:
independent, extensible and pluggable email processing agents
Storage API:
Mailbox API / Search API / User API
Storage Implementations:
Cassandra / PostgreSQL / HSQLDB / MySQL / OpenSearch...
Administration:
JMX / REST / Command Line
James Core
Your James server
can also be used as Mail Transfer Agent
, by enabling only
SMTP
or as a
IMAP
Mail Delivery Agent.
james general architecture
using james as smtp relay
using james as an imap server
Click here to see how-tos for some James features
James is a
living Open Source project
(all developments and implementations are based on open technical standards), any function which is not already available from
can be developed!
Get Started With James
Get Started With the official binaries
→
DOWNLOADS:
The Apache James project wires together the different libraries composing James to provide a running services,
ready to download on the Apache mirrors. See
our download page
Follow
our installation guide
Get Started With James And Docker
WHAT WILL YOU TRY:
Here you will try James server version 3.8.1 thanks to an image. This James image has a default configuration
using JPA (hsqldb) and Lucene. It also includes a default domain named james.local and three default users:
user01@james.local, user02@james.local, user03@james.local, with their default password being
1234
Note: this James server will respond to IMAPS port 993 and SMTPS port 465.
STEPS YOU HAVE TO FOLLOW:
Pull and run the James image with the following single command:
docker run -p "465:465" -p "993:993" apache/james:demo-3.8.1
Then, connect this image with for instance, Thunderbird. This
tutorial
covers more in depth user and domain creation,
as well as thunderbird setup.
ALTERNATIVES:
Instructions that do not imply docker are also available
here
BETA:
Distributed James server
Recent work of the Apache James project did lead to a James product that leverages a distributed mail server,
using storage technologies like
Cassandra
OpenSearch
RabbitMQ
, and
objectStorage (S3/Swift)
Feedback on this product, announced as a beta since 3.5.0 is welcome.
This product can be executed via
docker-compose
or you can follow its
standard
installation guide
MAIN GOALS
Providing a
distributed mail server
fully horizontally scalable.
Maintaining a
standalone version
suitable for a single server, based on
JPA
INCOMING WORK
Rework our documentation with
Antora
specify it on a per-server basis for ease of use.
Preview
...
We will furthermore target servers to identified use cases, formulated in non technical terms: Basic Server, Advanced Server and Distributed Server.
Promote guice based applications.
Spring server will be deprecated. A summary of community call describing this item can be found
Guice adoption schedule:
Promote Guice artifacts on the download page as part of
3.7.0
Deprecate Spring artifact as part of
3.8.0
Remove Spring artifact as part of
4.0.0
Continue improving
JMAP
RFC-8621
support. See this
JIRA
for some further possible
developments
Feel free to add your own items here:
see
Contribute
Apache James MIME4J 0.8.11 - March 05, 2024
The Apache James developers are pleased to announce the 0.8.11 release of the MIME4J library.
Apache James Server 3.8.1 - January 09, 2024
The Apache James developers are pleased to announce James server 3.8.1 release.
READ MORE POSTS
Apache James Project is
an Open Source all-volunteer project obtaining its strength from its Community made of developers and users. All are welcome to the Community!
That way, we recommend that Users, Developers, Curious and Fans join the James Community.
Mailing list:
Subscribe to the appropriate
Mailing Lists
according to your interests and your profile.
Mail guidelines
explain you more precisely how it works.
Gitter chat room:
Chat in live with the community on
Gitter chat room
Twitter:
Express yourself and follow us
@ApacheJames
Download Apache James releases:
Our
download page
allows you to download artifacts and sources for the James Server and James libraries.
Professional support:
Find a list of companies which can provide you some
support on James
James is a project that lives from the contributions of its community.
Anyone can contribute!
That's right, we always want to hear from people with contributions to the code, the documentation, the website, and bug reports.
We more than welcome non-coding contributions.
Here are different ways to contribute:
Licenses:
All contributions to the James project are made under the
Apache license 2.0
Join the community:
We more than welcome
articles
blog posts
about James.
Contact us by
email
or
on
Gitter
to share your experiences.
Don't hesitate to promote the Apache James project on your preferred medias.
Report bugs:
You can here enter bug encountered, share your point of view about a specific feature or anything else...
Each subproject has its own bug tracker.
Go to James Server project bugtracker
For other projects click on the appropriate links mentioned in the concerned subproject. Finally, create your issue.
Documentation:
Documentation is an easy way to get on board!
Check out the
~documentation
label on JIRA to get some ideas.
Report on JIRA the typo you spots, the information you miss, and any improvement you can think to.
The next step is to contribute the documentation changes via
Git
How to contribute code changes:
Read our sources from the
Apache Git
You can also come and interact with us on
GitHub
and share your work by creating a pull request.
Alternatively, you can attach a
patch
to the JIRA issue.
After a review, and exchanges with you, an Apache James developer will integrate the changes once it matches our policies.
What contributions can you do:
We reference some easy tasks to start with :
~newbie
We have a collection of minor fixes awaiting contributions:
~easyfix
Challenge yourself with some cool features we thought to:
~feature
Additional ideas are more than welcome. Don't hesitate to discuss that with us!
Reporting security vulnerabilities:
Security
: Vulnerabilities should be announced to the Apache Security team.
PMCs will be notified about them, and will work hard to propose fixes as fast as possible.
Additional information:
The
contribute
page contains more details about the various details exposed above.
To match the quality expectations of our community, we enforce
coding standards
We rely on
checkstyle
for style checking.
James use-cases
Linagora
OpenPaaS
At 
LINAGORA
, we chose JAMES as the Mail Delivery Agent of our 
 product:
For easy administration of email load balancing and high availability
To allow email interactions with the platform
To use the 
 protocol (the browser interacts directly with the mail server)
Our deployment currently allows serving a hundred users over JMAP, SMTP and IMAP.
Some statistics...
Contributors
Last year commits
Forks
Stars
...and contributors
James
Connect
Mailing-list
Twitter
Support
Apache Foundation events
Copyright
Apache James and related projects are trademarks of the Apache Software Foundation.
Copyright 2006-2018 The Apache Software Foundation. All Rights Reserved.
License
Donate
to support the Apache Foundation
Thanks
Design:
HTML5 UP
Thanks to
Neoma by Linagora
for the website design