我有一个用于创建自定义类加载器的模块。因此,应该使用模块的路径以及所有依赖项来创建类加载器。
我正在寻找一种方法,使在开发和生产环境中使用此机制都能高效工作。
我认为构建可以生成两个列出所有依赖路径的文件。 “开发”文件和“生产”文件(然后在代码中我会根据某些系统属性选择正确的文件):
- dev:依赖项应该是本地 maven 存储库中第三方 jar 的路径或其他模块的“目标\类”(这将允许使用 IDE 进行编译,而不需要为每个更改进行完整构建)
- 生产:应将所有 jar 复制到“lib”文件夹,并且依赖项应列出它们(没有完整路径)。或者,创建一个 uber jar,然后 (?)
所以我正在寻找指向插件和 pom 片段的指针来帮助我解决这个问题。
最佳答案
一些提示:
对于开发部分,Maven Dependency Plugin及其
dependency:build-classpath
可以提供帮助(并支持将输出写入文件)。另一种选择是使用 Maven AntRun 插件,它可以访问 Maven runtime classpath ,将属性写入文件应该很容易。对于产品部分,我假设您将使用 Maven Assembly 插件或 Shade 插件或其他等效插件,我想知道您是否无法在 MANIFEST.MF 中生成类路径条目并依赖它。
关于java - 用于部署和测试的 Maven 类路径生成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3299795/