gradle 3解决包依赖问题笔记
来源:互联网 发布:淘宝客做二级域名 编辑:程序博客网 时间:2024/06/05 08:00
gradle管理web项目时经常需要在编译期间引用servlet-api,但又不希望将其一起发布,解决办法:
1. 引用war插件,插件中提供了providedCompile依赖
apply plugin: 'war'
2. 使用providedCompile引入servlet-api
dependencies{
providedCompile group: 'javax.servlet', name: 'javax.servlet-api', version: '3.0.1'}
3. 生成idea工程
gradle idea
顺便吐槽一下cloudera的hive-jdbc,居然以compile依赖的方式引入了jasper包,与tomcat7版本冲突,系统无法启动。解决过程如下:
1. gradle查看依赖关系,检查是谁引入了jasper
gradle dependencies --configuration compile
2. 发现是hive-jdbc间接引用了jasper
+--- org.apache.hive:hive-jdbc:1.1.0-cdh5.13.0
| +--- org.apache.hive:hive-common:1.1.0-cdh5.13.0
| | +--- org.apache.hive:hive-shims:1.1.0-cdh5.13.0
...
| +--- org.apache.hive:hive-service:1.1.0-cdh5.13.0
| | +--- org.apache.hive:hive-metastore:1.1.0-cdh5.13.0
| | | +--- org.apache.hive:hive-serde:1.1.0-cdh5.13.0
| | | | +--- org.apache.hive:hive-common:1.1.0-cdh5.13.0 (*)
...
| | +--- org.eclipse.jetty.aggregate:jetty-all:7.6.0.v20120127 (*)
| | +--- tomcat:jasper-compiler:5.5.23
| | | +--- javax.servlet:jsp-api:2.0
| | | | \--- javax.servlet:servlet-api:2.4 -> 2.5
| | | \--- ant:ant:1.6.5
| | +--- tomcat:jasper-runtime:5.5.23
| | | +--- javax.servlet:servlet-api:2.4 -> 2.5
| | | \--- commons-el:commons-el:1.0
| | | \--- commons-logging:commons-logging:1.0.3 -> 1.2
| | +--- javax.servlet.jsp:jsp-api:2.1
3. 手动将jasper-runtime和jasper-compiler改为provided依赖
// 解决hive2 jdbc间接依赖jasper的问题,改为providedprovidedCompile group: 'tomcat', name: 'jasper-compiler', version: '5+'providedCompile group: 'tomcat', name: 'jasper-runtime', version: '5+'
gradle查询依赖关系:
gradle dependencyInsight --dependency slf4j-api
http://www.mkyong.com/gradle/gradle-display-project-dependency/
https://docs.gradle.org/current/userguide/userguide_single.html#sec:listing_dependencies
- gradle 3解决包依赖问题笔记
- gradle 解决依赖冲突问题
- gradle不能下载最新依赖包问题
- Gradle解决依赖冲突
- 常见包依赖问题及解决
- 解决RPM包循环依赖的问题
- ubuntu如何自动解决包依赖问题
- 解决hadoop mapreduce 包依赖问题
- gradle cache转为local Maven库,解决gradle编译依赖包时常被墙
- gradle cache转为local Maven库,解决gradle编译依赖包时常被墙
- Android Studio(Gradle)解决库依赖冲突问题
- Android Studio(Gradle)解决库依赖冲突问题
- Android Studio(Gradle)解决库依赖冲突问题
- Android Studio(Gradle)解决库依赖冲突问题
- Android Studio(Gradle)解决库依赖冲突问题
- Android Studio(Gradle) 解决库依赖 冲突问题
- gradle查看解决依赖问题-记录Butterknife8.5.1
- Android Studio(Gradle)解决库依赖冲突问题
- 达内课程-Set集合和Collection
- android 系统状态栏的隐藏和显示
- tp5 微信授权登录
- Oracle、Java及JavaScript正则表达式对比总结
- layui 数据表格 根据值(1=业务,2=机构)显示中文名称
- gradle 3解决包依赖问题笔记
- 14.开源项目--git rebase(给提交重新排序)
- 简单的一个小Demo
- Shell字符串操作集合
- Android图片加载框架Glide用法
- 番外1>索尔港的一分钟——《地与光》
- jenkins继续集成
- 成分句法分析与依存句法分析
- 鼠标上划