我正在使用 maven 构建一个在 Tomcat 中运行的 Java Web 应用程序。某些 JAR 文件(例如 mail-1.4.1.jar 和数据库驱动程序)已放入 tomcat/lib 目录,并且 maven 依赖项设置为“provided”。(我不是 100% 确定为什么,但我认为这与 JNDI 有关。)
现在,我在尝试使用mvn exec:java
. 不出所料,它找不到mail.jar,我得到了错误java.lang.NoClassDefFoundError: javax/mail/Session
如何为独立 Java 程序指定 javax.mail scope="runtime" 同时仍然为 Tomcat 应用程序“提供”?我必须使用 Maven 配置文件吗?如果是这样,我在哪里可以找到有关其工作原理的有用文档(配置文件的依赖项是附加的还是它们会覆盖默认的依赖项等?)