【问题标题】:Create common class, has dependency, how do I formally share this dependency?创建公共类,有依赖,如何正式共享这个依赖?
【发布时间】:2016-06-14 23:37:31
【问题描述】:

我扩展了一个抽象类并实现了一个我将在 Mule 中反复使用的方法。我想将它添加到我将在 Maven 中心上回购的库中。这取决于 Mule 连接器开发套件(Mule 连接器的 SDK)中提供的 JAR。我如何正式发布或公开告诉其他人我的公共库在没有早期依赖项的情况下也无法工作?依赖 org.json 和 fasterXML...Jackson..etc。

我的代码模块是一个 HttpProcessMessage 并且过度使用的方法返回一个格式化的 JSON 字符串。消息 POJO 被加载,然后我的方法最终类似于 toString() 方法,但更复杂。

我希望这个类成为一个公共库的一部分,该库将成为社区的一部分。我希望我的代码在这里是基础并且没有依赖关系。现在,我正在寻找解决依赖关系并通知公众的答案。

【问题讨论】:

    标签: java json maven dependencies mule


    【解决方案1】:

    这是 Maven 和其他依赖项管理工具的主要优点之一,当您的依赖项添加到他们的 Maven 项目中时,Maven 将自动获取传递依赖项。所以没有必要让人们知道你依赖什么依赖。它将被自动处理,如果他们愿意,他们可以使用 Maven 命令或检查 Maven 工件以确定您依赖的传递依赖项。

    您需要将 com.faster.xml 依赖项和 org.json 依赖项添加到您的 Maven pom.xml 中,所有这些信息都与您的 Maven 工件一起打包,并将存储在 Maven 存储库中。

    更多关于 Maven 依赖的信息在这里:https://maven.apache.org/guides/introduction/introduction-to-dependency-mechanism.html

    如果他们在 Maven/Gradle 等之外手动安装 jar,那么除了向他们提供有关安装说明的详细 README 之外,您无能为力。

    【讨论】:

    • 完美!当我将我的工作隔离到一个带有 JAR 打包的 Maven 项目中时,在 Maven POM 中添加的依赖项将是显而易见的。 Eclipse 或类似中的 red-X'es 会告诉我这一点。而且,我认为 Maven 是处理我的通用代码的最佳方式。谢谢!
    猜你喜欢
    • 2012-01-21
    • 1970-01-01
    • 2016-02-18
    • 1970-01-01
    • 2011-10-01
    • 2012-02-24
    • 1970-01-01
    • 2015-11-22
    • 2017-04-08
    相关资源
    最近更新 更多