java如何排除多余的依赖_Maven依赖排除 禁止依赖传递 取消依赖的方法 去除jar包中的不想要的依赖关系...
大家都知道Maven的优点是依赖管理,特别是前期使用ANT的开发者都有很多感触。最近要开发一个java工程,定的要使用maven,会使用hadoop和hbase的客户端,而引入一个hadoop-client的jar或者hbase的jar包,会依赖十几个其他的jar包,而这些jar包的功能我又用不上,所以这种依赖反倒成了工程瘦身的负担。关键我还有强迫症,见到这些对工程无用的包,我就抓狂。所以在网上百找千寻,找到了几个方法:
1. 项目间传递
如果我的当前项目是project1,project1要依赖project2,project1依赖project2的配置中加上true,表示依赖可选,
Java代码
com.projecct
project2
1.0
compile
true
那么以后所有声明依赖project1的项目如果也依赖project2,就必须写手动声明。比如project3依赖project1和project2,如果project3只声明了对project1的依赖,那么project2不会自动加入依赖,需要重新声明对project2的依赖。
这种方式排除不了我项目中对第三方jar包所依赖的其他依赖,因为我不可能去修改第三方jar包的pom文件,所以只适合在项目组内部使用。
2. 依赖过滤
(1)单依赖过滤
同依赖过滤直接处理:可以过滤一个或者多个,如果过滤多个要写多个。这个也解决不了我的问题,或者说解决太麻烦,我那里知道hbase要依赖那些包,记不住。
Java代码
org.apache.hbase
hbase
0.94.17
commons-logging
commons-logging
(2)多依赖过滤
把所以依赖都过滤了。手起刀落~啊,世界都安静了。
Java代码
org.apache.hbase
hbase
0.94.17
*
*
java如何排除多余的依赖_Maven依赖排除 禁止依赖传递 取消依赖的方法 去除jar包中的不想要的依赖关系...相关推荐
- java打包要依赖maven库吗_maven-将依赖的 jar包一起打包到项目 jar 包中
前言: 有时候在项目开发中,需要很多依赖的 jar 包,其中依赖的 jar 包也会依赖其他的 jar 包,导致jar 包的管理很容易不全,以下有两种方法可以规避这个问题. 一.在pom.xml 文件中 ...
- mvn install:install-file将本地一个中央仓库没有的jar包,推到本地仓库----所有依赖不上仓库不能用
mvn install:install-file将本地一个中央仓库没有的jar包,推到本地仓库----所有依赖不上仓库不能用! 前提:maven等环境配置Ok 目标:把中央仓库没有的,部门内部 自研开 ...
- autowired注入jar中的依赖_springboot项目中调用jar包中的类时报错 — 没有注入类
使用场景:将一些公共的方法封装成了一个jar包,在其他项目中进行引用的时候报错 报错原因:bean没有注入 因为这两个类没有被@Service,@Repository等类注解,如果我们想用@Autow ...
- java jar包资源文件_深入jar包:从jar包中读取资源文件
我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会有问题.但是,如果我们把代码打成一个jar包以后,即使将资源文件一并打包,这些东西也找不出来了.看看 ...
- java原生和SpringBoot读取jar包中MANIFEST.MF的方式
我们经常看到java的一些jar包META-INF目录下包含一个MANIFEST.MF文件,里面包含一些版本信息,标题,实现组织,很多第三方的jar包还会自定义一个属性. 本文讲解如何读取jar包中M ...
- [Java基础] 深入jar包:从jar包中读取资源文件
转载: http://hxraid.iteye.com/blog/483115?page=3#comments 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的 ...
- java执行jar中的main_浅谈java 执行jar包中的main方法
浅谈java 执行jar包中的main方法 通过 OneJar 或 Maven 打包后 jar 文件,用命令: java -jar ****.jar 执行后总是运行指定的主方法,如果 jar 中有多个 ...
- 如何讲页面打入jar包中_如何把我的Java程序变成exe文件?
JAVA是一种"跨平台"的语言,拥有"一次编写,处处运行"的特点,让它成为当今IT行业,必不可少的一门编程语言. 每一个软件开发完成之后,应该大家都需要打包程序 ...
- java 读取jar包中的文件
文章目录 项目resource中文件路径和jar包中文件路径的区别 正常读取 jar包读取 完整代码: 项目resource中文件路径和jar包中文件路径的区别 打成jar包后,是一个整体的文件. 正 ...
最新文章
- 自学python找工作工资-大四应届毕业生,学了两个月Python,找工作感觉好难啊?...
- Linux内核链表之共享双链表
- [转]实用体系结构:逻辑分层
- 排序函数(sort()、sorted()、argsort()函数)
- MySQL报错 Packet for query is too large,server向mysql发送的数据包大小超过mysql限制
- 「07」回归的诱惑:深入浅出逻辑回归
- 《程序员自我修养》阅读笔记-可执行文件装载与进程
- docker常用功能操作记录5
- 【课本】【No.3】随机向量定义、联合分布函数、边缘分布、统计特征的分布函数的差分,独立性、离散型条件分布列,连续型分布函数与密度函数、随机向量的函数分布
- 泛微oa系统什么框架_产品方案-产品体系-系统整体架构_OA_泛微
- 用java 解密pdf_Java 加密、解密PDF文档(示例代码)
- 关于我的 “二进制部署 kubernetes 集群” 的体验
- 全通系统定义、零极点关系、应用
- 洛谷P3354 [IOI2005]Riv 河流 题解
- PostgreSQL alter语法
- Android面试题收集(有具体答案)
- C++对接国际验证码接口DEMO示例
- Python中turtle画n层m个不同方向的圆,送你一朵小黄花
- qt 飞扬青云_Qt编写安防视频监控系统(界面很漂亮)
- “囚徒困境”与帕累托最优理论以及基于OpenAI的辅助--测试(3)
热门文章
- 【nginx】nginx 反向代理 指令说明
- 【java】ASM代理方式 Byte-Buddy代理方式 Javassist代理方式
- [Elasticsearch] es 6.6 编译报错 java.net.ConnectException: Operation timed out
- 【Elasticsearch】es 的配置集合
- RocketMQ项目rocketmq-externals中rocketmq-console启动报错
- 记一次极其坑爹的Maven无法下载相关Jar包的问题:IDEA问题
- 【Druid IO】Instantiation of [simple type, class druid.indexing.kafka.supervisor.KafkaSupervisorTunin
- Java8 Stream流式编程,极大解放你的生产力!
- IntelliJ IDEA 开启很慢,运行不流畅,大项目卡顿?一招配置解决!
- 开发机直连 Docker 中的 Redis 容器小教程