我想在我写的脚本中使用GitHub repo。脚本将在一个应用程序中运行,该应用程序要求脚本具有最小的依赖性。我的意思是它可以依赖于独立的.jar或库,但不能依赖于具有进一步依赖性的.jar或库。这是一项安全措施。我的脚本需要依赖于GitHub项目,但该项目也有自己的依赖项。有没有办法将GitHub项目及其依赖链压缩到一个独立的库或.jar中?
如果有帮助,我正在使用IntelliJ(最新版本)。我需要使用的GitHub项目可以是以下之一:
https://github.com/RuedigerMoeller/fast-serialization
https://github.com/EsotericSoftware/kryo
我需要它非常快速和频繁地序列化和反序列化大型对象结构,否则我的程序不会对当前数据进行操作。
编辑:所以我确实解决了这个问题,解决方案是使用Maven Shade插件来编译Maven项目的超级或胖.jar。这让我可以绕过安全措施。答案 0 :(得分:1)
依赖于GitHub仓库具有源依赖关系(可能在自己的仓库中声明自己的二进制依赖关系)。
您需要分叉该repo,并将其maven项目转换为generate a fat jar(例如Shade plugin)。
而且您需要将新工件发布到工件存储库(例如您自己的Nexus),以便您的项目依赖它。