Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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 我如何为一个";“提供”;附属国_Maven - Fatal编程技术网

Maven 我如何为一个";“提供”;附属国

Maven 我如何为一个";“提供”;附属国,maven,Maven,我正在构建一个实用程序,它依赖于Google collections 我绝对不想让它成为编译依赖项,甚至运行时依赖项,因为只有一种特殊的方法使用它,如果用户不使用我的方法,我不想将用户锁定到该版本的Google collections中 挑战在于,既然提供了这种依赖关系,我如何构建一个测试它的单元测试 如果我指定了一个运行时依赖项,这将要求用户提供我的Google collections版本,即使他们不需要它(我使用的是Table,一个新功能) 如果我使用配置文件,我担心我没有测试我正在构建的内

我正在构建一个实用程序,它依赖于Google collections

我绝对不想让它成为编译依赖项,甚至运行时依赖项,因为只有一种特殊的方法使用它,如果用户不使用我的方法,我不想将用户锁定到该版本的Google collections中

挑战在于,既然提供了这种依赖关系,我如何构建一个测试它的单元测试

如果我指定了一个运行时依赖项,这将要求用户提供我的Google collections版本,即使他们不需要它(我使用的是Table,一个新功能)

如果我使用配置文件,我担心我没有测试我正在构建的内容


是否有任何类型的Maven scope将提供的和测试结合起来?

不确定您的要求,但

提供

这与compile非常相似,但表明您希望使用JDK 或在运行时提供依赖关系的容器。例如,当 要为Java企业版构建web应用程序,您需要 将ServletAPI和相关JavaEEAPI的依赖关系设置为 提供范围,因为web容器提供这些类。这 范围仅在编译和测试类路径上可用,并且是 不及物