使用James搭建一个自己的邮箱服务器
---第一天开发---
下载Apache James 3.0邮箱服务器,解压到响应的目录
可以看到目录结构:
H:\code\JavaCode\James\apache-james-3.0-beta4
λ dir
驱动器 H 中的卷没有标签。
卷的序列号是 04AC-0E80 H:\code\JavaCode\James\apache-james-3.0-beta4 的目录 // : <DIR> .
// : <DIR> ..
// : <DIR> bin
// : <DIR> conf
// : <DIR> lib
// : , LICENSE
// : <DIR> log
// : , NOTICE
// : , README.crypto
// : , README.txt
// : <DIR> var
个文件 , 字节
个目录 ,,, 可用字节
进入bin目录下,直接运行run,这期间可能出现错误:
[com.sun.xml.internal.bind.v2.runtime.IllegalAnnotationsException: 1 counts of IllegalAnnotationExceptions
类的两个属性具有相同名称 "outputs"
可以将jaxb-impl-2.1.3.jar包放入James路径下的comf/lib下来解决问题,下载地址为:网盘:https://yunpan.cn/cM4ueRMwqPScQ (提取码:b575)
之后就可以启动这个服务器了,运行run。完成之后向服务器添加一个新的domain,进入bin之后执行命令:
H:\code\JavaCode\James\apache-james-3.0-beta4\bin
λ james-cli.bat -h localhost -p 9999 adddomain test.com
adddomain command executed sucessfully in 289 ms.
就可以添加一个为test.com的命令,在向服务器中添加一个新的用户邮箱为:admin@test.com
james-cli.bat -h localhost -p 9999 adduser admin@test.com 123456
adduser command executed sucessfully in 224 ms.
这样一个简单的邮箱服务就建立好了,我使用了foxmail来测试环境是否搭建完成,打开Foxmail添加用户:
账号:admin@test.com
密码:123456
邮箱类型我设置为POP3类型的,收件服务器和发件服务器都为127.0.0.1,因为是本地环境测试,只能本机使用,如果想用好听点的名字可以自己更改host。
收件服务器的端口为:110
发件服务器的端口为:25
设置完成之后就完成了。现在打开foxmail给自己发送一封邮件吧:

点击发送按钮,就可以发送成功,点击左上角的收取:

可以看到一封未读就是刚刚的邮件。现在看看中断上显示的信息:

显示了邮箱服务的类型,id好喝用户名以及ip地址。表示发送的记录。
使用James搭建一个自己的邮箱服务器的更多相关文章
- 使用gitblit搭建一个简单的局域网服务器
使用gitblit搭建一个简单的局域网服务器 1.使用背景 现在很多使用github管理代码,但是github需要互联网的支持,而且私有的git库需要收费.有一些项目的代码不能外泄,所以,搭建一个局域 ...
- 通过ProGet搭建一个内部的Nuget服务器
.NET Core项目完全使用Nuget 管理组件之间的依赖关系,Nuget已经成为.NET 生态系统中不可或缺的一个组件,从项目角度,将项目中各种组件的引用统统交给NuGet,添加组件/删除组件/以 ...
- 快速搭建一个本地的FTP服务器
快速搭建一个本地的FTP服务器 如果需要开发FTP文件上传下载功能,那么需要在本机上搭建一个本地FTP服务器,方便调试. 第一步:配置IIS Web服务器 1.1 控制面板中找到"程序& ...
- 利用 nodeJS 搭建一个简单的Web服务器(转)
下面的代码演示如何利用 nodeJS 搭建一个简单的Web服务器: 1. 文件 WebServer.js: //-------------------------------------------- ...
- 快速搭建一个本地的FTP服务器 win10及win7
快速搭建一个本地的FTP服务器 如果需要开发FTP文件上传下载功能,那么需要在本机上搭建一个本地FTP服务器,方便调试. (win10) 第一步:配置IIS Web服务器 1.1 控制面板中找到“ ...
- 搭建一个简单的FTP服务器
本文介绍通过win7自带的IIS来搭建一个只能实现基本功能的FTP服务器,第一次装好WIN7后我愣是没整出来,后来查了一下网上资料经过试验后搭建成功,其实原理和步骤与windows前期的版本差不多,主 ...
- nodejs基础 用http模块 搭建一个简单的web服务器 响应JSON、html
前端在开发中,大多会想浏览器获取json数据,下面来用nodejs中的http模块搭建一个返回json数据的服务器 var http = require("http"); var ...
- nodejs基础 用http模块 搭建一个简单的web服务器 响应纯文本
首先说一下,我们平时在浏览器上访问网页,所看到的内容,其实是web服务器传过来的,比如我们访问www.baidu.com.当我们在浏览器地址栏输入之后,浏览器会发送请求到web服务器,然后web服务器 ...
- 百度云网速慢?普通VIP也限速?用户激励措施太套路?Pandownload被举报?这些统统没关系,我们自己搭建一个私人云盘服务器
前言 前几天醒来后,照例耍手机看新闻.在疫情如此严重的档口,一则小小的新闻引起了我内心小小的波动:Pandownload作者被举报了....心里第一件事就是可惜了我盘上的那N多个T的小电影了,&quo ...
随机推荐
- JedisPool异常Jedis链接处理
问题现象(jedis-2.1.0.jar) 基于JedisPool管理Jedis对象,通过get方法获取值,出现key对应的value值错误,例如: K V a a b b Jedis.get(“a” ...
- 初探ECMAScript6
基础变化 String类型新增了三个方法,不必使用indexOf来判断一个字符串是否在另一个字符串内 //String changes var a = "Hello world"; ...
- FusionCharts简单教程(三)-----如何自定义图表上的工具提示
最近有蛮多人总是问我这个FusionCharts制表的问题,帮助他们解决之后,在昨晚发现以前整理的笔记中有这个简单教程,而且以前也发表了几篇这个博文,所以就将其全部上传上来供别人参考.如有不正确之处望 ...
- Yii Model中添加默认搜索条件
在查询中增加条件 public function defaultScope() { return array( 'condition' => " is_deleted = 0" ...
- 已经为类型参数“Chart”指定了 constraint 子句。必须在单个 where 子句中指定类型参数的所有约束
public abstract class FillWorkBook<TModel, Chart> where TModel : struct where Chart : new() wh ...
- 知方可补不足~SQL2008中的发布与订阅模式
回到目录 作用:完成数据库与数据库的数据同步 原理:源数据库发布需要同时的表,存储过程,或者函数:目标数据库去订阅它,当源发生变化时,目标数据库自己同步,注意,由于这个过程是SQL自动完成的,所以要求 ...
- Atitit.软件中见算法 程序设计五大种类算法
Atitit.软件中见算法 程序设计五大种类算法 1. 算法的定义1 2. 算法的复杂度1 2.1. Algo cate2 3. 分治法2 4. 动态规划法2 5. 贪心算法3 6. 回溯法3 7. ...
- paip.2013年技术趋势以及热点 v2.0 cae
paip.2013年技术趋势以及热点 v2.0 cae HTML5 多核编程 物联网 可穿戴计算设备 3. 物联网 无论是M2M(机器对机器)通信应用,还是NFC(进距离通信)技术,都是物联网的组成部 ...
- Netty权威指南
Netty权威指南(异步非阻塞通信领域的经典之作,国内首本深入剖析Netty的著作,全面系统讲解原理.实战和源码,带你完美进阶Netty工程师.) 李林锋 著 ISBN 978-7-121-233 ...
- salesforce 零基础学习(三十九) soql函数以及常量
在salesforce中,我们做SOQL查询时,往往需要用到计算式,比如求和,求平均值,或者过滤数据时,往往需要通过时间日期过滤,SOQL已经封装了很多的函数,可以更加方便我们的sql查询而不需要自己 ...