我有用于发送邮件的OSGi包,因此它使用 mail-1.4.jar 中的 com.sun.smtp 包。但OSGi服务无法访问此jar。
你能帮助我,如何配置Maven POM文件,所以 mail-1.4.jar 将包含在我的捆绑jar中,以便OSGi服务可以使用它吗?
修改
错误是:
javax.mail.NoSuchProviderException:无法找到协议的提供者:smtp
答案 0 :(得分:2)
Yeasterday,我遇到了同样/类似的情况。请尝试以下方法:
将以下行添加到您的依赖关系列表中:
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.1</version>
</dependency>
希望它有所帮助
答案 1 :(得分:2)
我建议不要在邮件包中包含邮件jar。更好的方法是在osgi运行时中简单地安装mail.jar。
你必须确保你有两件事可以做到这一点:
答案 2 :(得分:0)
尝试将此代码添加到您的pom.xml
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4</version>
</dependency>
或者
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-email</artifactId>
<version>1.2</version>
</dependency>
这可能会对你有所帮助!