我正在使用一个Jenkins Slave,Java版本7用于部署应用程序。现在必须在同一台从机上使用Java 17和Java 7。我们如何运行两个Java版本来部署不同版本的应用程序?我可以通过Java 17在Jenkins中添加一个更多的奴隶来点他的,但我正在寻找是否可以通过同一个奴隶做到这一点。
bkkx9g8r1#
我们公司是通过使用Jenkins中的**“JDK安装”**配置来实现这一点的。这可以在Jenkins > Manage Jenkins > Tools中找到,您可以将各种JDK工具添加到Jenkins,然后您可以在管道中使用这些工具,如下所示:https://stackoverflow.com/a/48368506/21960203总的来说,我发现这是处理不同项目需要多个Java版本的最佳方法。
qltillow2#
虽然通过Jenkins设置手动设置JDK工具的方法肯定会起作用,但它需要持续维护(以及对Jenkins示例的管理访问),并且还有另一个主要缺点-您需要在所有代理上额外维护Maven/Gradle/其他构建工具,以确保构建环境的正确性和不变性。如果你能够使用容器作为构建环境,我强烈建议你这样做,而不是依赖于构建代理的状态。
2条答案
按热度按时间bkkx9g8r1#
我们公司是通过使用Jenkins中的**“JDK安装”**配置来实现这一点的。这可以在Jenkins > Manage Jenkins > Tools中找到,您可以将各种JDK工具添加到Jenkins,然后您可以在管道中使用这些工具,如下所示:https://stackoverflow.com/a/48368506/21960203
总的来说,我发现这是处理不同项目需要多个Java版本的最佳方法。
qltillow2#
虽然通过Jenkins设置手动设置JDK工具的方法肯定会起作用,但它需要持续维护(以及对Jenkins示例的管理访问),并且还有另一个主要缺点-您需要在所有代理上额外维护Maven/Gradle/其他构建工具,以确保构建环境的正确性和不变性。
如果你能够使用容器作为构建环境,我强烈建议你这样做,而不是依赖于构建代理的状态。