我正在Maven进行第一次破解并遇到问题。我们有一个部署在Tomcat 6上的应用程序。我们在tomcat的lib文件夹中添加了几个jar文件。然后在我们的构建路径中添加这个tomcat库。
如何将tomcat库添加到maven?这是一个不好的方法吗?还有其他选择吗?
提前致谢
答案 0 :(得分:8)
tomcat的lib目录中的任何内容都应该是范围为provided
的maven依赖项:
<强>提供强>
这很像编译,但表明你期望 JDK或容器提供 运行时依赖。例如, 在为Web构建Web应用程序时 您可以使用Java Enterprise Edition 设置Servlet API的依赖关系 和范围相关的Java EE API 因为web容器提供 提供那些课程。这个范围是 仅适用于编译和 测试类路径,并且不是传递的。
示例:强>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
如果库是您自己的库,则必须将它们安装或部署到本地或远程存储库。
答案 1 :(得分:1)
除了Tomcat安装之外,您应该将依赖项添加到maven项目。然后,将其范围设置为“已提供”,以便它们不与工件捆绑在一起。
答案 2 :(得分:1)
您应该在POM的<dependencies>
部分列出项目的每个依赖项。
这样Maven就可以对它们进行编译,并将这些依赖项包含在它为您打包的WEB-INF/lib
文件的.war
文件夹中。支持Maven的IDE可以将这些库包含在用于显示/构建/运行代码的类路径中。