簡體   English   中英

從 pom.xml 從 Java Maven 項目在 Z3B06ADACCEC858ZEDEFBBC66 管道中獲取版本

[英]Get the version from pom.xml from a Java Maven project in Bitbucket pipeline

有沒有辦法獲得 pom.xml 文件中定義的版本,以便它可以與 Bitbucket 管道中的變量一起使用?

StackOverflow 上有類似的問題,但它們主要是指 Jenkins 和“readMavenPom”,這在 Bitbucket 管道中似乎不可用。

我想用它作為版本 label 在第二步上傳到 S3。

- step:
    name: Build and Test
    caches:
      - maven
    script:
      - mvn package
    artifacts:
      - target/myapp-*.jar
- step:
    name: Upload to S3
    deployment: production
    script:
      - pipe: atlassian/aws-code-deploy:0.2.10
        variables:
          AWS_DEFAULT_REGION: $AWS_REGION
          AWS_ACCESS_KEY_ID: $AWS_ACCESS_KEY_ID
          AWS_SECRET_ACCESS_KEY: $AWS_SECRET_ACCESS_KEY
          COMMAND: 'upload'
          APPLICATION_NAME: 'myapp'
          ZIP_FILE: "target/myapp-*.jar"
          S3_BUCKET: 'myapps'
          VERSION_LABEL: "myapp-${version}-${BITBUCKET_COMMIT:0:8}"

基於@joe 的提示和類似的問題How to get Maven project version to the bash command line ,我可以確認這適用於 Bitbucket 管道:

- step:
    name: Get the version from pom.xml
    script:
      - MVN_VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec)
      - echo $MVN_VERSION

結果

+ MVN_VERSION=$(mvn -q -Dexec.executable=echo -Dexec.args='${project.version}' --non-recursive exec:exec)

+ echo $MVN_VERSION
0.0.1-SNAPSHOT

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM