我正在创建自己的java库来帮助我创建游戏。这个图书馆仅供个人发展。但是,库中的一些命令依赖于slick2D,而slick2D依赖于lwjgl。
问题: 如何在不包含该软件包中的其他库的情况下开发此库?
P.S:我明白,当我使用这个库时,我将不得不使用Slick2D和lwjgl,我很乐意。
答案 0 :(得分:4)
我建议使用 maven 作为构建基础架构。可以定义依赖关系和版本管理。查看您的IDE。
答案 1 :(得分:1)
你像往常一样开发它。只需将库包含在CLASSPATH中即可进行测试。一旦准备就绪,你只需构建jar就可以了,你可以开始分发你的库。当您分发库时,使用它的项目必须在其CLASSPATH中包含您的库及其依赖项。
因此,您所要做的就是让我们了解将使用您的库的开发人员,它的依赖项及其版本。就是这样。
例如:
您开发了依赖于dep1.jar和dep2.jar
的library.jar在开发时,需要在CLASSPATH中包含依赖项,以便进行测试,对吧?
但是当你构建library.jar时,它不会包含dep1.jar和dep2.jar。
这意味着如果我要使用你的库,我必须将library.jar,dep1.jar和dep2.jar包含到我的CLASSPATH中。
ClassLoader将加载库类,当您的类使用dep1.jar / dep2.jar类时,它们都将被加载。