java - 无法看到如何告诉 Maven 在 lib 文件夹上安装 jar

标签 java eclipse maven jar

抱歉,如果这太微不足道了,但我最近从标准控制台 java 项目跳入了 Wep 应用程序,因为在 java 项目中我成功地使用 maven 下载 jar 并将它们包含到类路径中...在 Web 应用程序中我不知道如何完成相同的工作并下载到 WEB-INF 上的 lib 文件夹,而不是仅仅将 jar 添加到我的类路径中。

我已经在堆栈溢出和谷歌中搜索了答案,但由于我没有找到任何答案,我担心我的方法应该完全错误。

我刚刚在 eclipse 上创建了我的 web 应用程序,然后将其转换为 maven 项目,然后在 pom.xml 中添加了此依赖项,就像我以前在普通 java 项目中所做的那样:

 <dependencies>
        <dependency>
             <groupId>joda-time</groupId>
             <artifactId>joda-time</artifactId>
             <version>2.9.1</version>
        </dependency>
 </dependencies> 

一切似乎都正常,并且没有显示错误,但是 jar 没有下载到 WEB-INF/lib 文件夹中。

预先感谢您提供的任何帮助。

最佳答案

如果您的项目正确配置为“Maven 项目”,那么您的包 View 中应该有一个名为“Maven 依赖项”的文件夹。 如果您的项目配置为 Maven 项目,则在顶级文件夹上有一个小“M”是一个很好的提示。 Eclipse 将下载到所谓的“存储库”中。这主要位于 $HOME/.m2

通常你不必直接关心 jars。 Maven 将下载它们并透明地为您创建一个类路径。 eclipse maven 集成称为 m2e

存储库的概念是 Maven 的核心。它们是存储依赖项和外部依赖项的地方。您始终可以假设存在两个存储库,一个是已经提到的本地存储库,另一个是所谓的“Maven-Central”see here 。除此之外,您还可以使用 Nexus 或 Artifactory 等工具设置公司范围的存储库。

要在本地存储库中上传依赖项,请使用 mvn install 命令。 mvn install 中的 Maven 正在执行 install lifecycle 。 然后将生成的 Artifact (通常是 jar 或 war,但不一定)和一些元数据(主要是您的 pom)上传到存储库。

然后,您可以通过依赖机制针对这些依赖项进行开发。

本地存储库中安装的依赖项始终为“SNAPSHOT”类型。关于 SNAPSHOT 和 Release(仅版本号)之间的区别以及如何部署/发布它们还有更多需要了解,但这些问题已经被多次提出。

关于java - 无法看到如何告诉 Maven 在 lib 文件夹上安装 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34777366/

相关文章:

eclipse - Spring框架入门

java - 从 Eclipse IDE 追踪不需要的网络访问

java - 如何配置我的表达式语言以在 Eclipse 中工作,同时还使用 JSP/JSTL?只是 JSP 吗?

java - com/fasterxml/jackson/databind/ObjectMapper 与 Maven 的 NoClassDefFoundError

java - 如何使用 Java 7 和 Maven 在 Eclipse Kepler 中运行 JSR 269 注释处理器

java - start.dfs.sh期间的异常

java - Eclipse Checkstyle插件(eclipse-cs)错误属性尚未设置

java - 如何使用 Maven for App Engine 设置 Java Eclipse (Juno) 动态 Web 项目

java.util.ArrayList 无法转换为 org.testng.xml.XmlClass - 运行脚本时抛出此错误

java - 监听集合中的多个文档并更新recyclerview