1.更改日志路径
james\apps\james\SAR-INF\environment.xml
Ctrl+F搜索:${app.home},替换成自己想要的路径,例如:E:/jamesLogs
<file id="pop3server-target">
<filename>E:/jamesLogs/logs/pop3server</filename>
<format>%{time:dd/MM/yy HH:mm:ss} %5.5{priority} %{category}: %{message}\n%{throwable} </format>
<append>true</append>
<rotation type="unique" pattern="-yyyy-MM-dd-HH-mm" suffix=".log">
<or>
<date>dd</date>
<size>10485760</size>
</or>
</rotation>
</file>
全文搜索:${app.home},都可以替换
2.更改收件箱路径
james\apps\james\SAR-INF\config.xml
Ctrl+F搜索:file://var/mail,替换成自己想要的路径,例如:file:///E:/james/mail
<!-- The inbox repository is the location for users inboxes -->
<!-- 本地的收件箱库。 -->
<!-- Default setting: file based repository - enter path ( use "file:///" for absolute) -->
<!-- 默认设置:文件基本库,输入路径(使用绝对路径"file:///") -->
<inboxRepository>
<repository destinationURL="file:///E:/james/mail/inboxes/" type="MAIL"/>
</inboxRepository>
全文搜索:file://var/mail,都可以替换
注意:先备份在修改,以防万一
配置用户信息
james\apps\james\SAR-INF\config.xml
我们可以选择将用户信息保存在数据库中,也就是说要将James和数据库连接起来,这个连接是在config.xml里配置的。在config.xml里找到:<users-store></users-store>项,它是用来保存用户信息的,默认时它里面的是:
<repository name="LocalUsers" class="org.apache.james.userrepository.UsersFileRepository">
<destination URL="file://var/users/"/>
</repository>
意思就是说用户信息存在文件系统中的目录:users里面。我们可以对这个设置进行更改,James提供了现成的配置,只不过被注释掉了,我们打开注释或手写:
<repository name="LocalUsers" class="org.apache.james.userrepository.JamesUsersJdbcRepository" destinationURL="db://maildb/users">
<sqlFile>file://conf/sqlResources.xml</sqlFile>
</repository>
意思就是将用户信息保存在数据库的users表里,表名可以更改。具体的SQL是在本地文件系统中的sqlResources.xml中配置的。
maildb是数据库配置:
在config.xml里找到<database-connections />项,它就是数据库连接的配置,在根据要连接的数据库的不同,配置的写法也不同,文件里有一些数据库写法的提示。如oracle,mysql,mssql,但要注意的是,实际上的最终正确的写法是根据数据驱动的不同而不同的。如:
<data-source name="maildb" class="org.apache.james.util.dbcp.JdbcDataSource">
<driver>oracle.jdbc.OracleDriver</driver>
<dburl>jdbc:oracle:thin:@127.0.0.1:1521:oracle</dburl>
<user>test</user>
<password>123456</password>
<max>20</max>
</data-source>
</database-connections>