我的主工程依赖于几个库Module,现在要在库工程里引入在一个库Module中的jar包,这个jar包是放在库工程的libs文件夹下的。
举个例子,Module中需要用的Gson
,于是就得在这个Module中的libs
文件夹下引入gson.jar
,现在我的主工程里也需要用Gson
,这个时候就不能在主工程的libs
下引入gson.jar
了。理论上我是能直接引用到依赖的Module中的包,不过我的Android Studio
中报红线,但是编译是可以通过的。
求解答。
我看到回答里也有人碰到这个问题,所以就说下吧。
这个是可以直接使用的!我当时可能IDE出现了点问题,只要主项目依赖了库,那么库中的jar就可以直接使用的。不行的话刷新下build.gradle 重启下试试
可以直接使用的,亲
楼主,解决了没,我最近也碰到这个问题??求
将Module对jar的依赖关系从compile改为provided,这样jar文件将只能提供给对应的module使用,而外部无法通过编译获取。
方法一:
通过gradle配置
dependencies { provided fileTree(dir: 'libs', include: ['*.jar'])}
方式二:
右键module选择open module setting,选择要修改的module名,切换到dependencies页面,将要修改的jar的scope修改provided模式。
为什么要引用Module中的jar包,这么神奇,什么情况下会用到,需要用jar包直接在自己Module中compile‘’ 不就可以了 为什么要引用Module中的jar包,好像引用不了吧。
我再加一句:你真是个小白。
可以直接使用吧
1、主工程如果以来了那个module,那么这个module libs下的jar包也会被依赖
2、当然,该module中的dependencies要有对libs下jar的依赖