首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >maven构建过程改进

maven构建过程改进
EN

Stack Overflow用户
提问于 2017-05-25 15:25:29
回答 2查看 64关注 0票数 0

我有一个由18个模块和一个父项目组成的大项目。这个项目需要大约1小时的时间来构建,为了改进这一点,我们决定通过设置4个不同的maven配置文件来减少时间,每个配置文件都有项目模块集。父pom.xml模块是:

代码语言:javascript
复制
<modules>
    <module>module1</module>
    <module>module2</module>
    <module>module3</module>
    <module>module4</module>
    <module>module5</module>
    <module>module6</module>
    <module>module7</module>
    <module>module8</module>
</modules>

现在有点像

代码语言:javascript
复制
<profiles>
    <profile>
        <id>main</id>
        <modules>
            <module>module1</module>
            <module>module2</module>
            <module>module3</module>
       </modules>
    </profile>
    <profile>
        <id>profile1</id>
        <modules>
            <module>module4</module>
            <module>module5</module>
       </modules>
    </profile>
    <profile>
        <id>profile2</id>
        <modules>
            <module>module6</module>
       </modules>
    </profile>
    <profile>
        <id>profile3</id>
        <modules>
            <module>module7</module>
            <module>module8</module>
       </modules>
    </profile>
</profiles>

我们使用jenkins构建项目,并在maven选项中提供配置文件名。这里的问题是,我们看到构建几乎相同的时间,它在日志中显示,声纳和三叶草覆盖运行在整个项目,而不是那套模块!知道怎么解决这个问题吗?有人有更好的方法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-05-25 15:46:41

虽然从分析中排除模块是可能的,但是您不会从当前的方法中获得您想要的结果。这是因为您期望对项目的每个子集执行SonarQube分析。很可能,您希望每个子集在SonarQube中显示为不同的、可浏览的项目。但那不是会发生的。因为每个分析都将使用相同的项目id,所以每个概要文件都将覆盖前面的分析。

由于您的项目似乎由4个独立子集组成,因此我建议您实际上将项目分成4个单独的子集,每个项目都有自己的项目id、测试和分析。

票数 1
EN

Stack Overflow用户

发布于 2017-05-25 17:06:38

您可以在maven中试用并行构建

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44184195

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档