如何解决java工程中多个版本的包冲突问题
如何解决java工程中多个版本的包冲突问题
那肯定是包名重复了吧 只能改包名了 因为在java中包名是不能重复的
如果是工程中存在多jar包版本,二系统只需要使用其中一个版本。这种简单,删掉不相容的就是了。
如果是工程中需要同时使用不同版本的jar包,那你需要针对此部分程式码单独建立虚拟机器载入所需的包执行此段程式码
假如有两个jar里面的东西都具有某一部分相同的功能,就看哪个是最新的,调整jar的位置, 把新的放在上面; 还有现在一般都用maven了,在pom.xml里面加入jar,它会把相关的都加进来 望采纳,谢谢
去掉其他的,只留下一个。
下载jar包这里要去官网!
不然你这边下一个那边下一个很容易出现这个问题!
如何解决包冲突问题
有时候在用maven进行专案打包过程中,会出现下面这种错误资讯:
Cannot locate declared field class....
意思就是找不到对应的类,因为专案中存在多个 类的路径并且名字一样的 类。程式无法确定使用哪一个。
解决的办法就是,在pom.xml中,在对应的包引用下排除掉多余的包。即告诉maven在打包编译的时候不需要这部分内容,具体配置如下:
[] view plain copy
<dependency>
<groupId>.apache.solr</groupId>
<artifactId>solr-solrj</artifactId>
<version>5.3.0</version>
<exclusions>
<exclusion>
<artifactId>client</artifactId>
<groupId>.apache.ponents</groupId>
</exclusion>
</exclusions>
</dependency>
即其中的exclusions部分所示。