Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将Maven存储库添加到Tomcat';s类路径_Java_Maven_Tomcat_Classpath_Noclassdeffounderror - Fatal编程技术网

Java 将Maven存储库添加到Tomcat';s类路径

Java 将Maven存储库添加到Tomcat';s类路径,java,maven,tomcat,classpath,noclassdeffounderror,Java,Maven,Tomcat,Classpath,Noclassdeffounderror,我和Maven和Tomcat一起工作。我必须部署的一些web应用程序使用了许多在Maven中标记为“提供”的依赖项。这些依赖关系的一个例子是spring上下文 因此,当我打包项目时,这些依赖项不包括在WAR文件的lib文件夹中。 因为这个,我越来越 NoClassDefFoundError: org/springframework/context/ApplicationContext 我不能更改依赖项的范围,如果可能的话,我不想在WAR文件中包含依赖项JAR 如何将Maven存储库作为类路径添

我和Maven和Tomcat一起工作。我必须部署的一些web应用程序使用了许多在Maven中标记为“提供”的依赖项。这些依赖关系的一个例子是spring上下文

因此,当我打包项目时,这些依赖项不包括在WAR文件的lib文件夹中。 因为这个,我越来越

NoClassDefFoundError: org/springframework/context/ApplicationContext
我不能更改依赖项的范围,如果可能的话,我不想在WAR文件中包含依赖项JAR

如何将Maven存储库作为类路径添加到Tomcat,以便它能够解决所有“提供的”依赖关系?没有将JAR复制到Tomcat的lib文件夹


我在catalina.properties中尝试了shared.loader属性,但它不能递归地工作:我必须将每个JAR路径添加到属性的值中。

当应用服务器或容器已经有依赖项时,它会被标记为提供的依赖项,并且您不必将其放入战争中。这是servlets jar的情况,但spring上下文不是这样。我认为更好的解决方案是将此依赖项标记为“compile”而不是“provided”。

当应用程序服务器或容器已经有依赖项时,将其标记为provided,而不必将其投入战争。这是servlets jar的情况,但spring上下文不是这样。我认为更好的解决方案是将此依赖项标记为“compile”而不是“provided”。

当应用程序服务器或容器已经有依赖项时,将其标记为provided,而不必将其投入战争。这是servlets jar的情况,但spring上下文不是这样。我认为更好的解决方案是将此依赖项标记为“compile”而不是“provided”。

当应用程序服务器或容器已经有依赖项时,将其标记为provided,而不必将其投入战争。这是servlets jar的情况,但spring上下文不是这样。我认为更好的解决方案是将此依赖项标记为“compile”而不是“provided”。

您在这里几乎没有选择。就像@Andres所说的,要么在战争中添加JAR,要么将它们添加到Tomcat的类路径(ie lib文件夹)


虽然拥有一个支持Maven的类加载器的概念很有趣,但是想象一下所有可能发生的jar版本冲突War A提供了对Lib v1.0.1的依赖项,War B提供了对Lib v2.1.0的依赖项,而Tomcat会默默地解决这些问题……

您在这里几乎没有选择。就像@Andres所说的,要么在战争中添加JAR,要么将它们添加到Tomcat的类路径(ie lib文件夹)


虽然拥有一个支持Maven的类加载器的概念很有趣,但是想象一下所有可能发生的jar版本冲突War A提供了对Lib v1.0.1的依赖项,War B提供了对Lib v2.1.0的依赖项,而Tomcat会默默地解决这些问题……

您在这里几乎没有选择。就像@Andres所说的,要么在战争中添加JAR,要么将它们添加到Tomcat的类路径(ie lib文件夹)


虽然拥有一个支持Maven的类加载器的概念很有趣,但是想象一下所有可能发生的jar版本冲突War A提供了对Lib v1.0.1的依赖项,War B提供了对Lib v2.1.0的依赖项,而Tomcat会默默地解决这些问题……

您在这里几乎没有选择。就像@Andres所说的,要么在战争中添加JAR,要么将它们添加到Tomcat的类路径(ie lib文件夹)


虽然拥有一个支持Maven的类加载器的概念很有趣,但是想象一下所有可能发生的jar版本冲突War A提供了对Lib v1.0.1的依赖项,War B提供了对Lib v2.1.0的依赖项,Tomcat以静默方式解决这些问题……

是的,这将是最好的选择。问题是我无法更改依赖项的范围。遗留项目是个麻烦事。您可以重新打包和重新部署项目,但不能更改依赖项的范围,因为它们是“遗留”项目?现在我很好奇……也许我误用了“遗产”这个词。并不是说我“不能”。由于一些奇怪的团队要求,我“不允许”更改范围。是的,这将是最好的选择。问题是我无法更改依赖项的范围。遗留项目是个麻烦事。您可以重新打包和重新部署项目,但不能更改依赖项的范围,因为它们是“遗留”项目?现在我很好奇……也许我误用了“遗产”这个词。并不是说我“不能”。由于一些奇怪的团队要求,我“不允许”更改范围。是的,这将是最好的选择。问题是我无法更改依赖项的范围。遗留项目是个麻烦事。您可以重新打包和重新部署项目,但不能更改依赖项的范围,因为它们是“遗留”项目?现在我很好奇……也许我误用了“遗产”这个词。并不是说我“不能”。由于一些奇怪的团队要求,我“不允许”更改范围。是的,这将是最好的选择。问题是我无法更改依赖项的范围。遗留项目是个麻烦事。您可以重新打包和重新部署项目,但不能更改依赖项的范围,因为它们是“遗留”项目?现在我很好奇……也许我误用了“遗产”这个词。并不是说我“不能”。由于一些奇怪的团队要求,我“不允许”更改范围。
mvn-Dmdep.outputFile=FILE dependency:build classpath
将以适合于