gpt4 book ai didi

maven-2 - Maven - 在单个 pom 中进行多个构建

转载 作者:行者123 更新时间:2023-12-02 16:00:39 25 4
gpt4 key购买 nike

是否可以在单个 POM 文件中构建多个工件?它不是关于构建多个程序集,而是工件具有不同的构建和依赖项,但引用相同的源。

例如我需要构建的一个工件是一个 WAR 文件,它从构建中排除某些 AspectJ 文件,另一个是一个 JAR 文件,它需要在构建期间编织这些 Aspect。

现在,我有 2 个 pom.xml,它们在同一源的 2 个副本上运行以生成所需的工件。这可以在单个 POM 中完成吗?

最佳答案

尝试做你想做的事情通常是不好的做法,尽管我建议不要使用配置文件和程序集来完成它。

这就是我的处理方式。

将代码分离到一个jar项目中,并配置该jar项目以使用aspectj编译器插件。使war项目对jar项目有依赖,而jar项目对aspectjrt有依赖。您想要排除的 jar 依赖项可以指定为范围“provided”,这样它们就不会包含在构建中,也不会通过配置 jar 依赖项来排除这些传递依赖项(请参阅传递依赖项排除部分) Dependency Mechanism documentation 的详细信息。

构建 war 时,任何编译范围的依赖项(及其传递依赖项)都将捆绑到 war 的 WEB-INF/lib 目录中(即,aspectjrt 也将包含在内)。

如果您需要同时构建两个项目,请定义一个聚合器 pom 并将 jar 和 war 项目指定为模块。

关于maven-2 - Maven - 在单个 pom 中进行多个构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1323030/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com