使用发布或快照存储库进行手动部署,具体取决于项目版本

尼古拉斯·亨内克斯(Nicolas Henneaux)

如果项目的当前版本是快照版本,我想使用快照存储库(使用配置的属性project.distributionManagement.snapshotRepository.url)配置到远程存储库的手动文件部署,或者配置到发行版本存储库(使用配置的属性项目)的手动文件部署.distributionManagement.repository.url),否则。

我想将一个庞大的json模式部署到存储库,除了手动部署外,我没有找到其他任何方法。

尼古拉斯·亨内克斯(Nicolas Henneaux)

围绕使用构建器帮助程序bsh来使用分发管理配置中的正确存储库,存在一种变通方法。它将属性设置为正确的值。然后,使用目标deploy-file和此URL调用maven deploy插件。

<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>build-helper-maven-plugin</artifactId>
    <version>1.12</version>
    <executions>
        <execution>
            <goals>
                <goal>bsh-property</goal>
            </goals>
            <configuration>
                <properties>
                    <property>deploy.url</property>
                </properties>
                <source>deploy.url = project.getVersion().endsWith("-SNAPSHOT") ? project.getDistributionManagement().getSnapshotRepository().getUrl() : project.getDistributionManagement().getRepository().getUrl() ;</source>
            </configuration>
        </execution>
    </executions>
</plugin>
<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-deploy-plugin</artifactId>
    <version>2.8.2</version>
    <executions>
        <execution>
            <phase>deploy</phase>
            <goals>
                <goal>deploy-file</goal>
            </goals>
            <configuration>
                <url>${deploy.url}</url>
                <repositoryId>releases</repositoryId>
                <file>${swagger.directory}/swagger.json</file>
                <groupId>${project.groupId}</groupId>
                <artifactId>${project.artifactId}</artifactId>
                <version>${project.version}</version>
                <packaging>json</packaging>
                <classifier>swagger</classifier>
            </configuration>
        </execution>
    </executions>
</plugin>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使用Jest手动模拟React-Intl进行快照测试

如何从派生存储库中的分支手动部署Heroku Review App?

使用 environment.ts 中的 CLI 手动更新 Angular 发布版本

“手动发布此版本” - Apple App Store - iOS

使用 ansible 使用 `serial` 和未知库存大小进行手动分阶段部署

依赖项取决于项目中已使用的库的旧版本

使用VBA自动将VBProject引用添加到PowerPoint库,具体取决于运行的Office版本PC

Windows / Cygwin / Python:分辨率取决于手动输入还是Shell脚本?

使用AWS CodePipeline中的多个版本进行手动审批

使用Observables进行轮询的手动递归的更新版本是什么?

与通过Web门户进行手动快照相比,使用Endpoint Storage的SL api createSnapshot需要更长的时间?

如何手动添加yum存储库?

如何删除/手动删除已添加的存储库?

当前不支持Gradle项目的自动库版本更新。请手动更新您的build.gradle

为什么Apache Commons库的groupIds不一致,具体取决于项目?

使用.htaccess透明地管理网站的版本,具体取决于扩展名

使用指定的质量门分析手动添加的项目

使用ruamel CommentedMap()手动添加项目

防止在手动发布定义创建时自动部署

如何使用 Django 手动查询数据库?

使用Crypto ++手动进行CBC加密处理

如何使用PHP cURL手动进行“表单提交”?

使用GCC和手动Makefile进行增量构建?

如何使用preact进行手动代码拆分?

我应该使用Java 8默认方法来手动实现Spring Data存储库方法吗?

如何在jenkins中进行部署,具体取决于参数选择,从而从特定的git分支获取源代码

变异观察器错误,具体取决于Chrome版本

使用嵌入式库进行xcode测试时,手动签名失败。可以分解吗?

Composer存储库类型取决于环境