Java 在Eclipse中,在依赖于maven项目的动态web项目中,如何从maven项目中获取JAR?

Java 在Eclipse中,在依赖于maven项目的动态web项目中,如何从maven项目中获取JAR?,java,eclipse,maven,jar,dependencies,Java,Eclipse,Maven,Jar,Dependencies,在Eclipse中,我有两个项目: archangel.core-一个Maven项目 ArchangelWEB—一个动态Web项目(为Tomcat构建) 首先,archangel.core拥有所有的基本代码,并使用Maven来解析依赖关系。第二个是核心项目顶部的Web添加。这只有特定于演示/视图的代码。我希望将它们分开,因为将来可能会有其他项目依赖于核心,我不希望核心项目具有Web库依赖性 现在,在ArchangelWEB的构建路径中,我有archangel.core项目,在它的部署程序集中也有

在Eclipse中,我有两个项目:

archangel.core-一个Maven项目

ArchangelWEB—一个动态Web项目(为Tomcat构建)

首先,archangel.core拥有所有的基本代码,并使用Maven来解析依赖关系。第二个是核心项目顶部的Web添加。这只有特定于演示/视图的代码。我希望将它们分开,因为将来可能会有其他项目依赖于核心,我不希望核心项目具有Web库依赖性

现在,在ArchangelWEB的构建路径中,我有archangel.core项目,在它的部署程序集中也有archangel.core。这使我能够在ArchangelWEB中引用archangel.core中的代码,而不会出现任何构建或运行时问题

Archengel.core的一个依赖项是apache-commons-lang。在Archengel.core中,我可以引用像
ExceptionUtils
这样的类。但是,我无法从ArchangelWEB自动引用这个jar依赖项。如果我试图从ArchangelWEB中的ApacheCommonsLang导入类,它不知道我在说什么


将依赖项JAR从maven项目导入/引用到另一个使用maven项目作为依赖项的项目(我的动态Web项目)中的最佳方法是什么?

动态Web项目仅通过手动将JAR放置在Web-INF/libs文件夹中来解决依赖项。没有别的办法

因此,您需要手动将动态Web项目的相关JAR放入libs文件夹中。 添加JAR后,不要忘记在Lib->addtobuild路径中右键单击JAR


这就是为什么我们现在使用maven而不是旧的动态Web项目。

动态Web项目仅通过手动将JAR放在Web-INF/libs文件夹中来解决依赖关系。没有别的办法

因此,您需要手动将动态Web项目的相关JAR放入libs文件夹中。 添加JAR后,不要忘记在Lib->addtobuild路径中右键单击JAR


这就是为什么我们现在使用maven而不是旧的动态Web项目。

谢谢-当我将ArchangelWEB导出为war时,如果我进入Web-INF/lib,我会看到archangel.core.jar出现(因为我将archangel.core放在ArchangelWEB的部署程序集中)。我所做的假设是archangel.core.jar将包含jar本身中的所有jar依赖项,但当我将其导出为WAR时发现archangel.core.jar只包含来自Maven Java项目的代码。现在我明白了你的意思,以及为什么我们要用Maven来构建一个Web项目。谢谢——当我将ArchangelWEB作为war导出时,如果我进入Web-INF/lib,我会看到archangel.core.jar出现(因为我将archangel.core放在ArchangelWEB的部署程序集中)。我所做的假设是archangel.core.jar将包含jar本身中的所有jar依赖项,但当我将其导出为WAR时发现archangel.core.jar只包含来自Maven Java项目的代码。现在我明白了你的意思,以及为什么我们要用Maven来构建一个Web项目。