
Modularer Java-Mailserver, der IMAP, SMTP, POP3 und JMAP mit Docker-Bereitstellung, verteilter Architektur und CLI-Verwaltung für eine sichere Unternehmens-E-Mail-Infrastruktur unterstützt.
:latest_james_version: 3.8.0
image:https://img.shields.io/badge/Join%20us-Mailing%20lists-purple.svg[link="https://james.apache.org/mail.html"] link:https://gitter.im/apache/james-project[image:https://badges.gitter.im/apache/james-project.svg[Join the chat at link:https://gitter.im/apache/james-project]] image:https://img.shields.io/badge/CI-Jenkins-blue.svg[link="https://ci-builds.apache.org/job/james/job/ApacheJames/"] image:https://img.shields.io/badge/Documentation-green.svg[link="https://james.apache.org/documentation.html"] image:https://img.shields.io/badge/Downloads-{latest_james_version}-yellow.svg[link="https://james.apache.org/download.cgi"] image:https://img.shields.io/badge/Images-docker-blue.svg[link="https://hub.docker.com/r/apache/james"] image:https://img.shields.io/badge/License-ApacheV2-orange.svg[link="https://www.apache.org/licenses/"] image:https://img.shields.io/badge/Latests-news-red.svg[link="https://james.apache.org/index.html#posts"]
image::james-logo.png[link="https://james.apache.org"]
James steht für Java Apache Mail Enterprise Server!
Es hat eine modulare Architektur, die auf einer Vielzahl moderner und effizienter Komponenten basiert und letztendlich vollständige, stabile, sichere und erweiterbare Mail-Server bereitstellt, die auf der JVM laufen.
Erstellen Sie Ihre eigene persönliche Lösung für die E-Mail-Verarbeitung, indem Sie die benötigten Komponenten dank der angebotenen Inversion-of-Control-Mail-Plattform zusammenstellen und die Filter- und Routing-Regeln mit dem James Mailet Container weiter anpassen.
Unterstützte Protokolle sind: IMAP, SMTP, link:https://jmap.io[JMAP], POP3 und weitere...
Der link:https://james.staged.apache.org/james-distributed-app/{latest_james_version}/index.html[*Distributed Server*] konzentriert sich auf die Bereitstellung eines einfach zu betreibenden, skalierbaren Mail-Servers, der auf modernen Technologien (Cassandra, S3, OpenSearch und RabbitMQ) basiert.
Lesen Sie mehr auf https://james.apache.org/[unserer Website].
== Wie kann man beitragen?
James ist ein Projekt, das von den Beiträgen seiner Community lebt! Jeder kann mitmachen!
Lesen Sie https://james.apache.org/index.html#third[wie man beiträgt].
Wir heißen Artikel und Blogbeiträge über James mehr als willkommen. Kontaktieren Sie uns per https://james.apache.org/mail.html[E-Mail] oder auf https://gitter.im/apache/james-project[Gitter], um Ihre Erfahrungen zu teilen.
Dokumentation ist ein einfacher Einstieg und mehr als erwünscht! Schauen Sie sich das https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20documentation%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~documentation] Label auf JIRA an.
Und um mit Code-Beiträgen zu beginnen, suchen Sie die https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20newbie%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~newbie], https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20easyfix%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~easyfix], https://issues.apache.org/jira/issues/?jql=project%20%3D%20JAMES%20AND%20resolution%20%3D%20Unresolved%20AND%20labels%20%3D%20feature%20ORDER%20BY%20priority%20DESC%2C%20updated%20DESC[~feature] Labels auf JIRA.
== Wie man James testet
Voraussetzungen: docker installiert.
Hier werden Sie James Server Version {latest_james_version} mit Hilfe eines Docker-Images ausprobieren. Dieses James-Image hat eine Standardkonfiguration mit JPA (hsqldb) und Lucene. Es enthält auch eine Standard-Domain namens james.local und drei Standardbenutzer: [email protected], [email protected], [email protected], deren Standardpasswort 1234 ist.
Hinweis: Dieser James-Server antwortet auf IMAPS-Port 993 und SMTPS-Port 465.
Ziehen Sie das James-Image und führen Sie es mit dem folgenden einzelnen Befehl aus:
$ docker run -p "465:465" -p "993:993" apache/james:demo-{latest_james_version}
Verbinden Sie dann dieses Image mit beispielsweise Thunderbird. link:https://james.apache.org/howTo/imap-server.html[Dieses Tutorial] behandelt die Erstellung von Benutzern und Domains sowie die Einrichtung von Thunderbird ausführlicher.
Anleitungen, die kein docker voraussetzen, sind ebenfalls link:https://james.apache.org/server/install.html[hier] verfügbar.
== Wie man die Kompilierung überprüft
Wir benötigen mindestens link:https://maven.apache.org[maven] Version 3.6.1, um das Projekt zu bauen.
$ git clone [email protected]:apache/james-project.git
Führen Sie dann einfach mvn clean install in diesem Verzeichnis aus, um das Projekt zu kompilieren.
Nützliche Optionen sind:
-DskipTests um die langwierige, ressourcenintensive Tests auszulassen, die einen Docker-Daemon benötigen.-T 4 um den Build auf mehreren CPUs zu parallelisieren.-Dmaven.javadoc.skip=true um die Javadoc-Generierung zu überspringen.
====== Wie man James in Docker ausführt
Wir pflegen Docker-Distributionen für unsere auf link:https://github.com/google/guice[Guice] basierenden Anwendungen:
== Verwendung der CLI
Siehe https://james.apache.org/server/manage-cli.html[James über die Kommandozeile verwalten] für weitere Informationen.
== Entwickeln mit James
James benötigt mindestens JDK 11 und Maven 3.6.1 zum Bauen. Einige Teile von James sind in Scala geschrieben, daher muss man möglicherweise das Scala-Plugin in der IDE aktivieren.
Wir pflegen link:examples/README.md[Codebeispiele], um Ihnen beim Schreiben eigener Erweiterungen und der Konfiguration eigener Server zu helfen.
link:docs/modules/development/pages/deployment-tests.adoc[Diese Seite] beschreibt, wie man Deployment-Tests ausführt.
== Mehr über das James-Design erfahren
James wird mit einer https://james.apache.org/documentation.html[Dokumentation] und https://github.com/linagora/james-project/tree/master/src/adr[Architectural Decision Records] geliefert.
Eine genauere Beschreibung der Distributed Server-Architektur finden Sie link:https://james.staged.apache.org/james-distributed-app/{latest_james_version}/architecture/index.html[hier].
== Artikel für die James-Community