Java 如何在Jenkins的类路径中使用一组jar文件

Java 如何在Jenkins的类路径中使用一组jar文件,java,jenkins,build-automation,Java,Jenkins,Build Automation,如何做到这一点 我有一组jar文件,这些文件将被包含到类路径变量中 我不想给出命令SET CLASSPATH=xxx.jar;xx.jar作为构建步骤的一部分 我不想手动设置环境变量CLASSPATH作为系统属性的一部分 我试图将一组jar文件复制到Jenkins_HOME/war/WEB-INF/lib中,并启动了Jenkins服务器。但无法使之成为可能。。。有什么解决办法吗?我认为你让事情变得比需要的更困难了。为什么不想将类路径设置为预构建步骤?也许是因为工件有规律地变化 我的建议是,您考虑

如何做到这一点

我有一组jar文件,这些文件将被包含到类路径变量中

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

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


我试图将一组jar文件复制到
Jenkins_HOME/war/WEB-INF/lib
中,并启动了Jenkins服务器。但无法使之成为可能。。。有什么解决办法吗?

我认为你让事情变得比需要的更困难了。为什么不想将类路径设置为预构建步骤?也许是因为工件有规律地变化

我的建议是,您考虑使用构建并将Jenkins作业转换为Maven作业,然后您可以在POM中而不是在Jenkins中处理额外的依赖项,这可能会更优雅一些

例如,您的JUnit和Selenium依赖项可以包括为

<dependencies>
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.9</version>
        <scope>test</scope>
    </dependency>
    ... etc

朱尼特
朱尼特
4.9
测试
... 等
(重要的是要让它们远离最终工件)在Jenkins作业配置中,“目标和选项”可以是
测试包

希望有帮助


干杯,

您可以通过添加类路径元素maven来尝试。您可以在下面的链接中看到详细信息


org.apache.maven.plugins
maven surefire插件
2.22.1
路径/到/附加/资源
路径/to/additional/jar
路径/to/csv/jar1,路径/to/csv/jar2

如下设置类路径环境,任何jar文件都会在特定目录中更新它

设置类路径=
\*


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

JAR文件是什么?为什么要把它们放在Jenkins的类路径上?@wulfgar.pro我需要所有作业都需要的jar文件。。其中一些是junit.jar、selenium.jar。您是如何安装Jenkins的?使用war还是本地二进制?如果是war,您将部署到哪个容器?@wulfgar.pro我将直接运行war文件,如下所示。。java-jar jenkins.war您在调用jvm时是否尝试过使用-cp开关?我不能使用maven,因为它没有internet访问权限&资源仅限于本地网络,即IntranetMaven可以脱机运行和/或您可以在项目中的
localrepository/…
中使用jar。我的想法是,未来,即使更新了jar文件版本,我也会将最新的jar文件复制到一个特定的位置&重新启动jenkins,这样类路径就会自动更新……这并不能回答问题
<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>