使用 Maven 为库项目导出 jar 的正确方法是什么?

What is the right way to export a jar using maven for a library project?

我有一个用 maven 构建的库项目。它有它的依赖性。我需要将此项目导出为 jar(不是 运行nable jar)。我应该将依赖项与我的 jar 一起包含还是不应该包含?因为当我用我的 jar 导出依赖项时,当将不同版本的相同 jar 用于将此项目添加为依赖项的项目时会发生冲突。但是如果我不导出依赖项,在 运行 时间这个库项目会为其依赖项抛出 NoClassDefFound 错误。那么这样做的正确方法是什么?如果我不使用我的 jar 导出依赖项,有没有办法让使用这个库项目的项目可以为库项目下载这些 jar?如果那是我的做法,那么这是否意味着使用该项目的项目也必须使用 maven?这不是一个好的做法,因为无论谁使用这个库,都应该能够使用他们想要的任何构建工具。我对 Maven 很陌生。请指教

这主要是为了品味,一些开源项目两者兼而有之,提供 for 和 without 以便在更大的项目中更容易使用。

如果您在其他项目中使用 Maven,您可以在声明对这个库的依赖时告诉 Maven 排除它的一些组件 jar。