Maven-排除当前模块中的依赖项

Maven-排除当前模块中的依赖项,maven,dependencies,Maven,Dependencies,我的Maven项目在其依赖项部分中有依赖项A、B、C,在某些概要文件中也有依赖项D 我想将其倒置,这样项目将在其依赖项中包含依赖项A、B、C、D,以及概要文件,该概要文件将依赖项D从项目的依赖项列表中排除 我知道我可以排除可传递依赖项,但是如何从pom.xml中排除第一类依赖项?您看过Maven中的可选依赖项吗?嗯,我需要在默认情况下启用或在生产中禁用某些依赖项,这些依赖项提供某些代码,仅在开发环境中使用。目前,我使用的概要文件显式地添加了依赖项,因此开发人员可以在IDEA中运行应用程序,并设置

我的Maven项目在其依赖项部分中有依赖项A、B、C,在某些概要文件中也有依赖项D

我想将其倒置,这样项目将在其依赖项中包含依赖项A、B、C、D,以及概要文件,该概要文件将依赖项D从项目的依赖项列表中排除


我知道我可以排除可传递依赖项,但是如何从pom.xml中排除第一类依赖项?

您看过Maven中的可选依赖项吗?嗯,我需要在默认情况下启用或在生产中禁用某些依赖项,这些依赖项提供某些代码,仅在开发环境中使用。目前,我使用的概要文件显式地添加了依赖项,因此开发人员可以在IDEA中运行应用程序,并设置一些环境变量。现在IDEA会不时地从运行时配置中删除配置文件,这会引发很多问题,比如为什么会出现ClassNotFoundException,因此人们必须在IDEA中打开maven->profiles对话框,并明确检查相应的配置文件。可选依赖项不完全涵盖这种情况吗?您可以指定构建产品所需的所有依赖项,但在生产中并不需要它们。查看我上面提供的链接,搜索文本Hibernate以了解它应该如何工作。不完全是这样,将其作为可选项会将所有的DEP都带到生成的WAR文件中,这对于生产构建是不必要的。