首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Maven:是否可以为多个配置文件指定一个不同版本的相同插件,同时激活所有这些配置文件?

Maven:是否可以为多个配置文件指定一个不同版本的相同插件,同时激活所有这些配置文件?
EN

Stack Overflow用户
提问于 2020-04-21 07:15:51
回答 1查看 356关注 0票数 0

我有一个Maven项目,在这个项目中,我用Swagger创建了一些API定义。使用openapi-generator-maven-plugin,我生成TypeScript代码和TypeScript代码来使用API。

在我的pom.xml配置中,我为每种语言定义了一个Maven配置文件。问题是,我想在生成JAVA代码时使用这个插件的4.2.0版本,在生成TypeScript代码时使用4.3.0版本:我在这两个概要文件中都使用了4.2.0版本,但是在4.3.0版本中出现了一些新特性,用于TypeScript生成,经过一些测试,我想在TypeScript生成中避免一些副作用。

当每个配置文件被单独激活时,一切都如预期的那样工作。但是如果我激活了这两个配置文件,Maven使用的是插件的最新版本:4.3.0Maven

由于我的Maven项目将构建在CI/CD服务器中,我想知道在单个构建过程中是否可以在配置文件的基础上使用同一个maven插件的特定版本,还是需要为每个配置文件创建一个单独的构建?

我的pom.xml看起来是这样的:

代码语言:javascript
复制
<profiles>
    <profile>
        <id>java</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.openapitools</groupId>
                    <artifactId>openapi-generator-maven-plugin</artifactId>
                    <version>4.2.0</version>
                    <executions>
                        <execution>
                            <id>generate-api-java-model</id>
                            <goals>
                                <goal>generate</goal>
                            </goals>
                            <phase>generate-sources</phase>
                            <configuration>
                                ...
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </profile>
    <profile>
        <id>typescript</id>
        <build>
            <plugins>
                <plugin>
                    <groupId>org.openapitools</groupId>
                    <artifactId>openapi-generator-maven-plugin</artifactId>
                    <version>4.3.0</version>
                    <executions>
                        <execution>
                            <id>generate-api-ts-model</id>
                            <goals>
                                <goal>generate</goal>
                            </goals>
                            <phase>generate-sources</phase>
                            <configuration>
                              ...
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </build>
    </profile>
</profiles>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-21 07:21:14

不,每个版本只能有一个插件版本。

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

https://stackoverflow.com/questions/61337904

复制
相关文章

相似问题

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