0

如何使这成为可能?

我有一组要包含在 CLASSPATH 变量中的 jar 文件。

我不想将命令SET CLASSPATH=xxx.jar;xx.jar;..作为构建步骤的一部分。

我不想手动将环境变量 CLASSPATH 设置为系统属性的一部分。

我尝试将一组 jar 文件复制到Jenkins_HOME/war/WEB-INF/lib并启动了 Jenkins 服务器。但不能让它成为可能......任何解决方案?

4

3 回答 3

0

您可以尝试通过附加的类路径元素 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>

于 2018-10-30T12:09:59.360 回答
0

如下设置 CLASSPATH 环境,任何 jar 文件都更新了它的特定目录

设置类路径=<your_lib_directory>\*

这将获取所有更新的 JAR 文件

于 2019-01-03T17:27:35.273 回答
-1

我认为你让自己的事情变得比需要的更难。为什么不想将类路径设置为预构建步骤?也许是因为文物经常变化?

我的建议是您考虑使用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.

希望有帮助。

干杯,

于 2012-11-22T09:24:10.493 回答