EWS JAVA API JAR包编译文档
EWS JAVA API JAR包编译文档 1
1 概述 2
1.1 EWS介绍 2
1.2 EWS编译目的 2
2 EWS编译步骤 2
2.1 安装编译工具 2
2.2 下载ews-java-api源码 3
2.3 编译ews-java-api源码 4
2.4 提取EWS相关JAR包 5
3 EWS API使用实例 6
4 参考链接 8
1 概述
1.1 EWS介绍
EWS 的全称是 Microsoft Exchange Web service,它是 Exchange 2007 以后推出的一个 web service,,它提供了访问 Exchange 资源的全新接口。
使用它可以避免使用.NET 基础类来使用SMTP 协议发送邮件和使用POP3 协议收邮件带来的大量代码工作。
EWS 是基于SOAP (Simple Object Access Protocol) 协议的,它的推出达到了以下几种目的:
提供EWS 资源的统一访问
提供与Outlook 一致的逻辑
Web Service 标准支持
远程访问
其中,EWS JAVA API提供java语言封装接口来访问Exchange Web服务(EWS)。
1.2 EWS编译目的
将EWSJAVA API 2.1最新源代码编译打包成单纯的JAR包,用于后续EWS开发使用。
JAR(Java Archive file),是Java一种文件封装,在开发时要引用通用类,打成包便于存放管理;JAR文件里包括很多个.class文件,每个文件中的功能与作用。
2 EWS编译步骤
2.1 安装编译工具
EWS编译,使用下载最新git/ maven等,其中maven安装时会有100多个依赖,其中包括J
DK(java-1.7.0-openjdk)。
java图书馆最新[root@localhost ~]# mkdir -p /home/EWSJavaAPI/
[root@localhost ~]# cd/home/EWSJavaAPI/
[root@localhostEWSJavaAPI]# yum install git
[root@localhostEWSJavaAPI]# yum install maven
安装完后查看版本信息
[root@localhostEWSJavaAPI]# git --version
git version 1.8.3.1
[root@localhostEWSJavaAPI]# mvn --version
Apache Maven 3.0.5 (Red Hat 3.0.5-16)
Maven home: /usr/share/maven
Java version: 1.7.0_101, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-1.7.0-openjdk-1.7.0.101-2.6.6.1.el7_2.x86_64/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-229.el7.x86_64", arch: "amd64", family: "unix"
[root@localhost repository]# java -version
java version "1.7.0_101"
OpenJDK Runtime Environment (rhel-2.6.6.1.el7_2-x86_64 u101-b00)
OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)
2.2 下载ews-java-api源码
从开源github/OfficeDev下载EWS的最新JAVA源码
[root@localhostEWSJavaAPI]# git clone git://github/OfficeDev/ews-java-api.git
Cloning into 'ews-java-api'...
remote: Counting objects: 18871, done.
remote: Total 18871 (delta 0), reused 0 (delta 0), pack-reused 18871
Receiving objects: 100% (18871/18871), 11.78 MiB | 19.00 KiB/s, done.
Resolving deltas: 100% (13929/13929), done.
跳转到Git工作目录,检查已下载源码
[root@localhostEWSJavaAPI]#cdews-java-api
[root@localhostews-java-api]# ls -al
2.3 编译ews-java-api源码
使用maven验证可用的单元测试和所有依赖的jar包,会在当前目录\target\下载测试代码并编译JAR包。
[root@localhostews-java-api]# mvn clean install
编译过程中出现测试文件OlsonTimeZoneTest.java编译错误,可能与时区有关。先注释掉,再次编译通过。
[root@localhostews-java-api]# mvn clean install
若显示“BUILD SUCCESS”,则编译成功,ews-java-api相关jar包在目录/root/.m2/。
2.4 提取EWS相关JAR包
编译后ews-java-api的相关jar包均在目录/root/.m2/repository/,里面含有所有jar包,包括ews-java-api.jar和其他依赖jar包。提取EWS主要或依赖jar包,如下:
3 EWS API使用实例
如下实例代码展示了获取指定Exchange邮箱账户里收件箱和草稿箱的前10封邮件的发件人和主题信息。
importjava.URI;
// EWS Managed API
hange.ExchangeService;
hange.dential.WebCredentials;
hange.dential.ExchangeCredentials;
hange.webservices.data.search.FindItemsResults;
hange.service.item.Item;
hange.webservices.data.search.ItemView;
hange.numeration.property.WellKnownFolderName;
hange.service.folder.Folder;
hange.service.item.EmailMessage;
//类定义结构体
classAccessInfo {
//public String Domain;
public String ServerAddress;
public String EmailPassword;
public String EmailAddress;
}
public class EwsFindMail {
// 主入口main 使用Exchange协议发送
public static void main(String[] args) throws Exception {
AccessInfo info = new AccessInfo();
info.ServerAddress = ""; // 192.168.28.184
info.EmailAddress = "";
info.EmailPassword = "q1w2E#R$";
// info.ServerUrl = "/EWS/Exchange.asmx";
try {
query( info );
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* 使用Exchange协议查询邮件EWSJavaAPI @throws Exception
*/
public static void query(AccessInfo info ) throws Exception {
// 创建ExchangeService类的一个实例
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论