Java:同一项目中的两个jar。
您不能仅在Java源代码中执行所要求的操作。Java不是为此而设计的。
这是一种糟糕的情况,只有使用自定义类加载器才能可靠地处理它们,每个加载器都提供您需要的一个jars。由于您最初是在问这个问题,所以这可能不是您应该采取的方式,因为这样会带来很多新的耗时的问题。
我强烈建议您找出 为什么 您的类路径中有同一个jar的两个不同版本,然后重新编写程序,以便只需要一个版本。
解决方法我有一个Java项目正在使用两个导入的具有相同类(com.sun.mail.imap.IMAPFolder)的jar。导入类时,有没有一种方法可以明确说明要使用哪个jar?使用:
import com.sun.mail.imap.IMAPFolder;
似乎按照构建路径顺序的顺序使用该类,但是由于某种原因,似乎并非如此
Exception in thread 'main' java.lang.reflect.InvocationTargetExceptionat sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Method.invoke(Method.java:616)at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)Caused by: java.lang.NoSuchMethodError: com.sun.mail.imap.IMAPFolder.idle()Vat com.woodbury.GCM.HelperGmailMonitor.doEmail(HelperGmailMonitor.java:104)at com.woodbury.GCM.Launch.listen(Launch.java:16)at com.woodbury.GCM.Launch.main(Launch.java:10)... 5 more
在运行时。我正在Eclipse中构建项目。
相关文章:
1. docker镜像push报错2. docker安装后出现Cannot connect to the Docker daemon.3. docker - 各位电脑上有多少个容器啊?容器一多,自己都搞混了,咋办呢?4. 关于docker下的nginx压力测试5. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下6. angular.js - angularjs的自定义过滤器如何给文字加颜色?7. 我在centos容器里安装docker,也就是在容器里安装容器,报错了?8. docker绑定了nginx端口 外部访问不到9. angular.js使用$resource服务把数据存入mongodb的问题。10. docker api 开发的端口怎么获取?