Jenkins流水线使用@Grab 导入Maven库
有个需求需要在pipeline中调用Java的SDK去执行业务
使用 @Grab 注解可以在Maven中导入Java 库,
@Grab('org.apache.commons:commons-math3:3.4.1')
import org.apache.commons.math3.primes.Primes
引入依赖后,在通过import导入
另外的写法
@Grab(group='org.springframework', module='spring-orm', version='5.2.8.RELEASE')
import org.springframework.jdbc.core.JdbcTemplate
指定maven仓库
@GrabResolver(name='restlet', root='http://maven.restlet.org/')
@Grab(group='org.restlet', module='org.restlet', version='1.1.6')
引入多个包
@Grapes([
   @Grab(group='commons-primitives', module='commons-primitives', version='1.0'),
   @Grab(group='org.ccil.cowan.tagsoup', module='tagsoup', version='0.9.7')
])
这样就可以在流水线中使用java的包
@Grab('com.test.sdk:1.0.0')
@GrabResolver(name = 'share-lib', root = 'http://localhost:8083/repository/share-lib/')
import com.test.sdk
pipeline {
     stages {
        stage('call sdk') {
                echo "调用SDk"
                def sdk = new sdk()
                def result = sdk.get($param)
                echo "${result}
            }
        }
    }
}
默认情况下,下载的包缓存在 ~/.groovy/grapes/中,我在测试过程中,发现拉取一次后,后续就不会去拉取依赖了,即使有更新也不会去拉取
https://docs.groovy-lang.org/latest/html/documentation/grape.html#_quick_start
Jenkins流水线使用@Grab 导入Maven库的更多相关文章
- idea项目无法自动导入maven库
		
解决:idea版本由15.0.*(需要Java8)降为14.1.4(Java7即可),搞定......
 - 在Eclipse中导入SVN库里的Maven项目
		
长期使用Intellij 对于Eclipse的东西都生疏了... 做了个小教程说明Eclipse下导入Maven工程的步骤以备不时之需 1. 安装maven插件 a) 下载maven http://m ...
 - jar导入本地maven库
		
最近在了解视频监控相关sdk,海康威视官方sdk要求自己手工将fas-data-sdk-1.0-SNAPSHOT.jar导入本地maven库,maven配置文件pom.xml配置如下 <?xml ...
 - jenkins流水线部署springboot应用到k8s集群(k3s+jenkins+gitee+maven+docker)(1)
		
前言:前面写过2篇文章,介绍jenkins通过slave节点部署构建并发布应用到虚拟机中,本篇介绍k8s(k3s)环境下,部署jenkins,通过流水线脚本方式构建发布应用到k8s(k3s)集群环境中 ...
 - Intellij IDEA 导入Maven项目
		
本人一直使用的eclipse, 但都说IDEA 是java界中最好使用的编辑器 ,所以开始了IDEA的学习,最近使用到了 IDEA 但是,既然编辑器有所差别,所以在使用过程中也难免遇到一些费劲的事情. ...
 - 如何在Android Studio项目中导入开源库?
		
前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不 ...
 - 解决myeclipse/eclipse创建或导入maven工程时引发的问题
		
起因: 最近学习maven,按照教程把命令行创建的maven工程导入到eclipse/myeclipse,由于库中没有一些依赖包,所以在导入工程的时候开发工具自动下载依赖包.可是,由于天朝特殊环境的问 ...
 - 导入maven工程错误
		
有时候导入maven工程会报空指针异常: An internal error occurred during: “Updating Maven Project”. java.lang.NullPoin ...
 - idea导入maven项目,web browser远程单步调试
		
问题:之前用idea14.1.3导入maven项目后,maven的dependencies不能自动解决依赖,到处都是红色的红线,看着就受不了.虽然不影响命令行编译,但是看着实在是不爽.总结下面几小步: ...
 - 更新maven库
		
删除所在本地仓库的文件夹,例如: 然后,重新下载一个jar包,放到工程的文件夹,注意名字要不同,否则maven库不予更新,替换完成后,点击工程,maven,update project即可,再次查看M ...
 
随机推荐
- [转帖]jmeter(八)断言
			
https://www.cnblogs.com/pachongshangdexuebi/p/11582891.html jmeter中有个元件叫做断言(Assertion),它的作用和loadrunn ...
 - [转帖]JMeter学习(二)搭建骨架--JMeter重要组件
			
https://www.cnblogs.com/tian-yong/p/4460665.html JMeter的属性和变量 JMeter属性统一定义在jmeter.properties文件中.JMet ...
 - [转帖]SQL Server超过了每行的最大字节数(8060)的原因和解决办法
			
一.现象 出现这种错误都发生在SQL语句建表时,错误提示: "警告: 已创建表 'XXXX,但其最大行大小(10438)超过了每行的最大字节数(8060).如果结果行长度超过 806 ...
 - awk的简要使用
			
原文地址:https://www.lujun9972.win/blog/2020/08/23/在命令行进行简单的统计分析/index.html 目录 使用awk获取最小值.最大值.中位数和平均值 使用 ...
 - Springboot 内嵌Tomcat 的http连接池与thread的关系
			
前言 最近看了很多tcp/ip 连接以及 IO相关的文章,但是依旧对数据库连接池等的部分不是很清楚, 所以这里仅是简单描述一下tomcat对应的http连接池数量的情况,不考虑与数据库的连接池的情况. ...
 - js计算两个时间相差多少分钟
			
<script> var str = "2020-02-04" console.log(str) console.log(str.replace(/-/g, " ...
 - 【小实验】使用 wrk 的 docker 容器来压测另一个容器
			
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 GET 请求 想压测容器环境的服务性能,发现两个麻烦: 本 ...
 - ABP-VNext 用户权限管理系统实战03---动态api调用并传递token
			
一.使用动态api的目的 ABP可以自动创建C# API 客户端代理来调用远程HTTP服务(REST APIS).通过这种方式,你不需要通过 HttpClient 或者其他低级的HTTP功能调用远程服 ...
 - C#不显示小数点0部分
			
c#去掉小数点后的无效0 ,保留指定位数的小数,比如10.0显示成10,小数部分会四舍五入 float value = 0.0500f; value.ToString("0.##" ...
 - TienChin-系统功能介绍
			
线索管理 添加线索 查看线索 删除线索 修改线索 分配线索: 将录入到系统的线索,分配给某一个市场专员去处理 跟进线索: 持续跟进一条线索 1.判断是否伪线索 2.持续跟进,每次跟进需要有记录 3 ...