我有一段代码是其他解决方案的适配器(例如:A,B,C)。用户选择(通过此适配器)在项目中使用哪种解决方案(只有一种)。显然,我仍然需要使用A,B,C依赖项来编译我的代码。但是我不想对A,B,C都没有compile依赖性-例如,如果用户选择解决方案A,则他不需要包括B或C。

我应该在我的POM中将A,B,C依赖声明为:

  • provided
  • provided,但optional
  • 只需将它们从POM中删除

  • 换句话说:provided是否意味着用户必须在其运行时中提供实现?

    谢谢!

    编辑:类似于this question

    最佳答案

    应该是provided - optional

    请参阅链接的问题以获取答案。

    10-08 12:53