[英]How to use a set of jar files in classpath in Jenkins
如何使這成為可能?
我有一組要包含在 CLASSPATH 變量中的 jar 文件。
我不想將命令SET CLASSPATH=xxx.jar;xx.jar;..
作為構建步驟的一部分。
我不想手動設置環境變量 CLASSPATH 作為系統屬性的一部分。
我嘗試將一組 jar 文件復制到Jenkins_HOME/war/WEB-INF/lib
並啟動了 Jenkins 服務器。 但不能讓它成為可能......任何解決方案?
您可以嘗試通過附加的類路徑元素 maven。 您可以在以下鏈接中查看詳細信息https://maven.apache.org/surefire/maven-surefire-plugin/examples/configuring-classpath.html
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.22.1</version>
<configuration>
<additionalClasspathElements>
<additionalClasspathElement>path/to/additional/resources</additionalClasspathElement>
<additionalClasspathElement>path/to/additional/jar</additionalClasspathElement>
<additionalClasspathElement>path/to/csv/jar1, path/to/csv/jar2</additionalClasspathElement>
</additionalClasspathElements>
</configuration>
</plugin>
</plugins>
如下設置 CLASSPATH 環境,任何 jar 文件都會更新它的特定目錄
SET CLASSPATH= <your_lib_directory>\\*
這將選取所有更新的 JAR 文件
我認為你讓自己變得比需要的更難。 為什么不想將類路徑設置為預構建步驟? 也許是因為文物定期更換?
我的建議是您考慮使用Maven進行構建並將您的 Jenkins 作業轉換為 Maven 作業 - 然后您可以在 POM 中而不是在 Jenkins 中處理您的額外依賴項 - 這可能更優雅一些。
例如,您的 JUnit 和 Selenium 依賴項可以包含為
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
... etc
( <scope>
對於將它們排除在最終工件之外很重要)並且在 Jenkins 作業配置中,“目標和選項”可以是test package
。
希望有幫助。
干杯,
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.