我们如何将库添加到我们的工作流类路径中?例如我想在我的工作流程中执行一些需要第三方库的java代码?在我的特殊情况下,想要使用AWS Java SDK来执行各种AWS任务。向Jenkins添加额外的库工作流类路径
回答
工作流程是不是真的意味着从外部库调用代码。有一个详细的解释为什么在JENKINS-26192问题。
可能有一个AWS插件可以安装到Jenkins中,并且它的东西可以从工作流脚本中使用。如果不这样做,你可以使用:https://github.com/jenkinsci/workflow-plugin/blob/master/cps-global-lib/README.md来创建一些函数,从你重用的groovy代码中调用Java SDK。
另一种选择是使用纯SH步骤和使用AWS CLI(这往往是最简单的,共同的行动为这些命令是相当简单的,有据可查。
回复:詹金斯AWS插件 - 你是否说我是否安装了一个给定的AWS插件,它可能包括Java SDK,并自动使它的库在Jenkins脚本的类路径中可用(即工作流程)? 在那个笔记上 - 詹金斯大师有没有一个lib目录我可以为此目的放入罐子? 回复:cps-global-lib - 难道我没有同样的问题,如果没有合适的类路径,这些脚本也不会执行?或者有没有一种方法来指定cps-global-lib的类路径? 回复:AWS CLI - 这就是我今天正在做的事情,但随着我们的使用增长,使用Java API会更加方便。 – Neil
@尼尔好Q,我不知道,我会试试看。 –
是的,你基本上有完整的类路径可用。但是有一些限制:1.如果正在使用沙箱,那么大多数操作将被阻止,以及2.您不能在变量中存储不可序列化的内容(除非您使用@NonCps,其他限制)。 – amuniz
- 1. 批量添加额外\在cp路径
- 2. 向exec-maven-plugin添加额外的路径
- 3. Maven的tomcat插件 - 添加额外的类路径
- 4. 未添加到Python路径与zc.recipe.testrunner额外路径
- 5. 在Spark客户端模式下向执行者添加额外的类路径
- 6. 向现有类添加额外的CSS
- 7. Router.go()增加额外的路径
- 8. Gradlew不向IDEA中的我的外部库(类路径)添加依赖项16.2
- 9. 如何向类路径添加资源
- 10. 在Java中的绝对文件路径中添加额外的'\'
- 11. 为hadoop工具设置额外的类路径
- 12. 在轨道上添加额外的参数红宝石路径
- 13. 为什么主干为url路径添加额外的参数?
- 14. jenkins插件的类路径
- 15. 如何使用raphael js添加额外路径箭头到指针路径
- 16. 从命令行编译时添加额外的库和包含路径
- 17. Jenkins Blue Ocean工作区路径太长
- 18. 如何向[Cloud Foundry] buildpack添加额外的流程?
- 19. 向IronPython添加路径
- 20. 向/ etc /路径添加路径不起作用
- 21. 柔性路径添加不工作
- 22. SQL向查询添加额外的列
- 23. 向inlineformset_factory添加额外的参数
- 24. 向brent_find_minima添加额外的参数
- 25. 向todo.js添加额外的字段
- 26. 向接口添加额外的方法
- 27. 向ABPersonViewController添加额外的按钮
- 28. 添加额外的Magento库存状态
- 29. java.lang.NoClassDefFoundError添加类路径时
- 30. 添加Maven类路径
感谢那个指针和杰西的解释。所以,在我的具体情况下,提出了这个问题,假设我们想要编写一个可重用的函数(我将其称为插件)以部署到AWS CodeDeploy。推荐的解决方案是为此创建一个步骤吗?基本上,我们在工作流程中失去了很多Jenkins插件 - 为了在工作流程友好的可用包中重新创建其中的一些(JIRA,XL Deploy等),您通常会建议编写一个步骤(https:// github.com/jenkinsci/workflow-plugin/tree/master/step-api)? – Neil