![](/img/trans.png)
[英]Passing command line arguments from Maven as properties in pom.xml
[英]Running maven plugin from command line outside pom.xml
下面是 maven 的 snyk 插件設置。 我已經在 pom.xml 中設置了插件。 我配置了在管道中設置的 maven。 以下配置有一個秘密 API_TOKEN。 將 API_TOKEN 設置為除默認管道文件之外的任何文件中的變量都不起作用。 所以我正在探索一些在管道文件中設置和運行插件的方法,即在 mvn 命令行中訪問和運行插件,例如 mvn my-plugin:my-goal -Dplugin.property=ABC。
但我不確定如何調用 snyk 插件並在構建/安裝/部署命令期間運行。
<plugin>
<groupId>io.snyk</groupId>
<artifactId>snyk-maven-plugin</artifactId>
<version>1.2.5</version>
<executions>
<execution>
<id>snyk-test</id>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
<execution>
<id>snyk-monitor</id>
<phase>install</phase>
<goals>
<goal>monitor</goal>
</goals>
</execution>
</executions>
<configuration>
<apiToken>${SNYK_TOKEN}</apiToken>
<failOnSeverity>high</failOnSeverity>
<org>MDA</org>
</configuration>
</plugin>
該團隊剛剛發布了該插件的新版本。 這是github 存儲庫。
例子
<build>
<plugins>
<plugin>
<groupId>io.snyk</groupId>
<artifactId>snyk-maven-plugin</artifactId>
<version>2.0.0</version>
<inherited>false</inherited>
<executions>
<execution>
<id>snyk-test</id>
<goals>
<goal>test</goal>
</goals>
</execution>
<execution>
<id>snyk-monitor</id>
<goals>
<goal>monitor</goal>
</goals>
</execution>
</executions>
<configuration>
<apiToken>${env.SNYK_TOKEN}</apiToken>
<args>
<arg>--all-projects</arg>
</args>
</configuration>
</plugin>
</plugins>
</build>
默認情況下,現在snyk-test
鏈接到mvn test
。 monitor
默認連接到mvn install
階段。 顯然,您可以像下面這樣更改它。
<executions>
<execution>
<phase>verify</phase>
<id>snyk-test</id>
<goals>
<goal>test</goal>
</goals>
</execution>
<execution>
<phase>none</phase>
<id>snyk-monitor</id>
<goals>
<goal>monitor</goal>
</goals>
</execution>
</executions>
第一個示例中的 API 令牌指的是環境變量。
有關更多信息,這篇博客文章可能會提供更完整的概述。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.