maven项目,把依赖的module打包为jar
安卓的同事说,如果引用的2个jar文件中,存在相同的package和类名称,即类的限定名一样,会报错.我觉得不会,就想试试.
首先在module中重写一个类文件,包名和类名与所覆盖的完全一样.
然后打成jar文件.发现idea会把maven依赖的module全部打入到一个包中去,后来发现原因如下图.
解决办法:先右键1.中依赖的module,remove.然后,右键2中的"pack into xxx.jar",就会是3中我们期望的效果了.
最后,我运行带有main方法的jar包,虽然引用的jar包中存在相同的类限定名,但是不会报错.它会顺序寻找classpath,找到第一个类.可能是安卓那边的jvm机制和java不一样吧,所以会报错.
心稳了,手也就稳了。