V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
howellz
V2EX  ›  Java

有没有直接的方法把依赖的第三方 jar 库直接编译到我的 jar 中?

  •  
  •   howellz · Apr 2, 2020 · 2566 views
    This topic created in 2226 days ago, the information mentioned may be changed or developed.

    我有一个 jar 文件需要 release 给用户,这个 jar 依赖于一些第三方的库,比如:

    okhttp
    json
    

    为了简化 release 的过程,我希望把这些第三方 package 直接放到我的 jar 文件中,这样无需 release 一堆 jar 文件给用户,以及配置 classpath 。

    在网上搜索了一圈,看到了将 jar 文件 unzip 然后再一起 zip 的方法(我没有验证过是否真的可行,但是从原理上应该没啥问题),但是我想问一下有没有更加直接的方法,比如 gradle 或者 maven 直接可以配置好的,这样无需我写一堆脚本来 unzip/zip 这些文件了。

    5 replies    2020-04-02 18:39:36 +08:00
    tt0411
        1
    tt0411  
       Apr 2, 2020
    搜索 maven-shade-plugin
    j2gg0s
        2
    j2gg0s  
       Apr 2, 2020
    fatjar
    fzhyzamt
        3
    fzhyzamt  
       Apr 2, 2020
    spring-boot 就是这么做的,用的楼上说的 fatjar
    howellz
        4
    howellz  
    OP
       Apr 2, 2020
    @tt0411 @j2gg0s 谢谢各位。我试一下。
    0xZhangKe
        5
    0xZhangKe  
       Apr 2, 2020
    proguard 好像可以
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3408 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 76ms · UTC 12:23 · PVG 20:23 · LAX 05:23 · JFK 08:23
    ♥ Do have faith in what you're doing.