V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX 提问指南
scratbai
V2EX  ›  问与答

有工具可以直接将依赖打包成 jar 的吗?

  •  
  •   scratbai · 2017-12-15 23:14:35 +08:00 · 1832 次点击
    这是一个创建于 2566 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有没有工具我给它指定一个或多个 maven 坐标,它帮我把指定的包及其所有依赖打包成一个新的 jar 包?

    第 1 条附言  ·  2017-12-16 00:08:38 +08:00
    标题里好像没说清楚,我指的是没有工程,将 maven 坐标及其依赖打包成胖 jar。这个过程不涉及 Java 项目的。
    8 条回复    2017-12-16 00:03:20 +08:00
    ob
        1
    ob  
       2017-12-15 23:17:50 +08:00 via Android
    那工具不就是 maven 吗
    owt5008137
        2
    owt5008137  
       2017-12-15 23:23:31 +08:00 via Android
    那工具不就是 maven 吗
    Infernalzero
        3
    Infernalzero  
       2017-12-15 23:28:14 +08:00
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    scratbai
        4
    scratbai  
    OP
       2017-12-15 23:31:18 +08:00
    @Infernalzero 不是这个意思,我的意思是不新建项目的。比如这个命令叫 demo,用法就应该是 demo --dependencies:g1:a1:v1,g2:a2:v2 --o target.jar 这样就给我生成这个新的 jar。包含上面两个 maven 坐标及其全部的依赖。里面任何一行代码是我写的。
    scratbai
        5
    scratbai  
    OP
       2017-12-15 23:34:18 +08:00
    @scratbai 少打了两个字,“没有任何一行代码是我写的。”
    zjp
        6
    zjp  
       2017-12-15 23:45:52 +08:00 via Android
    maven 就能下载 jar 包,为什么你要自己下载源码再打包……
    scratbai
        7
    scratbai  
    OP
       2017-12-15 23:54:19 +08:00
    @zjp maven 下载的只是这个 jar 包自身,不包含他的全部依赖。我本质上是想指定一组坐标,帮我把这些依赖什么的全部打成一个胖包。之所以想要这个,是因为我司的 Spark 环境支持比较弱,要自己上传 jar 包,这个方案可以一键帮我把依赖什么的都搞进一个 jar 包。
    terry0314
        8
    terry0314  
       2017-12-16 00:03:20 +08:00 via Android
    maven-assembly-plugin 插件
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5317 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 09:13 · PVG 17:13 · LAX 01:13 · JFK 04:13
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.