Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.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
Maven 如何从项目中删除commons beanutils核心_Maven_Apache Commons - Fatal编程技术网

Maven 如何从项目中删除commons beanutils核心

Maven 如何从项目中删除commons beanutils核心,maven,apache-commons,Maven,Apache Commons,背景 commons beanutils core1.8.0版存在一些我试图避免的安全问题。 因此,我使用的是commons beanutils1.9.4 问题 我似乎无法阻止其他库导入commons beanutils core 1.8.0版。我的pom文件中没有任何地方包含它。我假设其他依赖项隐式地包含它。而且,由于不再支持commons-beanutils-core,并且他们已经转向仅对所有较新版本使用commons-beanutils,当我明确编写: <dependency

背景

commons beanutils core
1.8.0版存在一些我试图避免的安全问题。 因此,我使用的是
commons beanutils
1.9.4

问题

我似乎无法阻止其他库导入commons beanutils core 1.8.0版。我的pom文件中没有任何地方包含它。我假设其他依赖项隐式地包含它。而且,由于不再支持
commons-beanutils-core
,并且他们已经转向仅对所有较新版本使用
commons-beanutils
,当我明确编写:

    <dependency>
        <groupId>commons-beanutils</groupId>
        <artifactId>commons-beanutils</artifactId>
        <version>1.9.4</version>
    </dependency>

使用提供的作用域可能会对运行时产生副作用。提供的作用域依赖项用于编译,但未打包,因此如果
commons beanutils核心
具有
commons beanutils
中不存在的方法,您将获得
NoSuchMethodException

更好的解决方案将用于查找哪些依赖项依赖于
commons beanutils core

  • 将依赖项更新为使用
    commons beanutils
    版本的
    1.9.4
    版本

  • 或者使用
    commons-beanutils-core
    作为依赖项从依赖项中排除
    commons-beanutils-core

  • 如果您可以使用方法1,如果找不到使用最新版本的依赖项,则最好使用方法2

        <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils-core</artifactId>
            <version>1.8.0</version>
            <scope>provided</scope>
        </dependency>