You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Maven依赖复用疑问:Java SDK能否同时提供Jar类与Pom构建配置?

无需拆分项目,两种方式实现需求

你不需要把SDK拆成两个独立项目,Maven提供了两种可行方案来同时满足类引用和构建配置复用的需求:

方案1:单项目同时输出jar和可复用pom

你的SDK默认打包为jar,当你执行mvn deploy或mvn install时,Maven会自动将项目的pom文件同步部署到仓库。其他项目可以通过两种方式引用:

  • 引用jar使用SDK辅助类:
<dependency>
    <groupId>你的groupId</groupId>
    <artifactId>你的artifactId</artifactId>
    <version>你的版本号</version>
</dependency>
  • 作为父pom复用native image等构建配置:
<parent>
    <groupId>你的groupId</groupId>
    <artifactId>你的artifactId</artifactId>
    <version>你的版本号</version>
</parent>

注意:作为父pom使用时,要把通用构建配置(比如native image插件、依赖管理)放在build或dependencyManagement节点下,避免把SDK自身的依赖强制传递给子项目。

方案2:多模块拆分(更推荐的清晰结构)

如果单项目的pom会因为混合业务代码和构建配置显得臃肿,可以拆分为两个模块:

  • pom类型的父模块:仅存放native image构建配置、全局依赖管理规则,不包含任何业务代码
  • jar类型的子模块:存放SDK的所有辅助类,继承父模块以复用构建配置
    其他项目可以按需选择:
  • 直接引用jar模块使用SDK类
  • 继承父模块复用构建配置

核心结论

两种方案都能实现你的需求,多模块拆分的结构更清晰,便于后续维护;单项目方案更轻量化,适合简单场景。

内容的提问来源于stack exchange,提问作者Haris Osmanagić

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 15:54:55