搭建Apache James服务器

本文介绍Apache James,一款100%纯Java构建的企业级邮件服务器,支持多协议并开源跨平台。详细步骤包括下载、配置及解决常见问题,如端口冲突与数据库配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

什么是apache James?

Java Apache Mail Enterprise Server-通常称为James-是Apache组构建的可移植、安全和100%纯Java企业邮件服务器。但是,由于它的可插拔协议体系结构和梅莱用于电子邮件的基础设施,就像servlet对Web服务器所做的一样。自从DARPA资助最终成为互联网的早期,电子邮件服务器就一直存在,但是James为通常被称为因特网第一个杀手的应用提供了新的可能性。

①一个支持多协议的企业级邮件服务器

②开源,多平台。开源的项目意味着不存在版本的问题,减少了诸多在法律上的问题,也保证了对于平台的扩展性的保持,纯java的实现也就意味着不会存在Windows和linux等系统不兼容的问题

本次选用  james-2.3.2.1版本。

下载之后直接解压,打开bin文件夹,运行里面的run.bat就是启动服务器了。如果出现下面的信息则说明启动成功:

要关闭 James 服务,请使用 Ctrl + C

注意:启动前请确保您的JDK环境变量如JAVA_HOME等已经设置好;James 启动时,其SMTP 服务默认在 25 端口启动,POP3 服务默认在 110 端口启动, NNTP 服务默认在 119 端口启动, 请确保这些端口未被占用。如果这几个端口已经占用的话,打开run.bat是会一闪而过的,请在james的文件路径apps/james/SAR-INF下打开config.xml文件,这个文件是服务器的配置文件,用notepad++或editplus等编辑器打开。CTRL+F找到pop3server这个标签:把110改成其他端口。

同理,把下面smtpserver和nntpserver的端口也改掉。

我们修改完这个几个端口后,就可以顺利启动James服务了。

当然也有可能会出现这个错误,如:文件名、目录名或卷标语法不正确。如果窗口一闪而过的话又想看错误提示的话,可以在bin下开一个命令提示符,输入run.bat,如果启动出错则会停止下来,不会一闪而过。这时候可以看一下错误信息,是不是有“文件名、目录名或卷标语法不正确。 ”这个错误信息,如果有的话还要对config.xml做一个修改:找到destination标签,可以看到这一段:

<repository name="LocalUsers" class="org.apache.james.userrepository.UsersFileRepository">
         <destination URL="file://var/users/"/>
</repository>

 

发现是不能生成文件,把这个注释掉,然后找到下面的这段把注解去掉

<repository name="LocalUsers"     
             class="org.apache.james.userrepository.JamesUsersJdbcRepository" 
             destinationURL="db://maildb/users">
         <sqlFile>file://conf/sqlResources.xml</sqlFile>
</repository>

表示用mysql数据库。数据库配置加在database-connections 标签下。需要将 MySQL-connector-Java-5.1.7-bin.jar 导入在 james\lib 下,同时修改config.xml配置:

<data-source name="maildb" class="org.apache.james.util.dbcp.JdbcDataSource">
         <driver>com.mysql.jdbc.Driver</driver>
         <dburl>jdbc:mysql://127.0.0.1/mail?autoReconnect=true</dburl>
         <user>root</user>
         <password>root</password>
         <poolPreparedStatements>true</poolPreparedStatements>
         <max>20</max>
</data-source>

password是你mysql数据库的密码,还要在mysql中创建一个mail数据库,要不是会报错的。如果没有mysql数据库的话就去装一个,安装教程也不在这说了。

最后应该就可以启动成功了,如果还出现一些奇奇怪怪的问题,请自行www.google.com/,小弟能力有限,补充说明一下,如果你是用Wamp来开启mysql服务的话,那么请记得在使用mysql之前务必先打开Wamp,要不开启james服务的时候也是会失败的。

原文:https://www.jianshu.com/p/36f7b67e33d6

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值