Maven技巧--拷贝/复制/导出Maven依赖jar包到指定目录

一、背景

今天要研究一下阿里的arthas,一款Java 应用诊断利器,想使用非 spring boot 应用使用方式集成到我们的应用中,本来照着官方文档操作也没啥问题,但是,我们项目没有使用maven管理,而是普通的jar包的搞法,这时候就需要想办法把jar弄出来,添加到项目里面。

附上arthas的官网:https://arthas.aliyun.com/

二、操作步骤

(一) 非 spring boot 应用使用方式

对应官网地址:https://arthas.aliyun.com/doc/spring-boot-starter.html#%E6%9F%A5%E7%9C%8B-endpoint-%E4%BF%A1%E6%81%AF

我们看一下官网的配置:
非 Spring Boot 应用,可以通过下面的方式来使用:


  	<dependency>
            <groupId>com.taobao.arthas</groupId>
            <artifactId>arthas-agent-attach</artifactId>
            <version>${arthas.version}</version>
        </dependency>
        <dependency>
            <groupId>com.taobao.arthas</groupId>
            <artifactId>arthas-packaging</artifactId>
            <version>${arthas.version}</version>
        </dependency>

import com.taobao.arthas.agent.attach.ArthasAgent;

public class ArthasAttachExample {

	public static void main(String[] args) {
		ArthasAgent.attach();
	}

}

也可以配置属性:

 	HashMap<String, String> configMap = new HashMap<String, String>();
        configMap.put("arthas.appName", "demo");
        configMap.put("arthas.tunnelServer", "ws://127.0.0.1:7777/ws");
        ArthasAgent.attach(configMap);
        

(二)开始引入jar包

从上面的maven的配置可以看到需要 arthas-agent-attach 和 arthas-packaging 这两个jar包,实际上如果我们只引用这两个jar 是会报缺失Class的错误的。

  • 我们知道maven是可以自动检测jar之间的相互依赖关系,会自动帮助我们下载依赖包的,这是maven的强项,也是大家使用maven管理的目的
  • 既然知道了maven可以解决依赖,是不是也能把依赖的包帮我们下载下来了呢?
  • 答案当然是可以了。继续。。。

(三)导出maven依赖的jar包

  • 进入工程目录,打开是这个样子的
    image-1669099143809

  • cmd 进入这个目录,然后执行下面的命令


mvn dependency:copy-dependencies -DoutputDirectory=lib -DincludeScope=compile

image-1669099318828

这个时候我们就会看到在我们的工程目录生成了一个lib文件夹,里面就是我们要的jar包了

image-1669099455206

三、完成,就是记录一下,省的自己忘了!

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×