log4j でデモ プロジェクト (proj1) を実行すると、正常に実行できます。しかし、作業中のプロジェクト (proj2) で同じコードを実行すると、このエラーが発生しました。関連するコードは次のとおりです。
is = Config.class.getResourceAsStream("log4j.properties");
PropertyConfigurator.configure(is);
エラーメッセージは次のとおりです。
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.log4j.PropertyConfigurator.configure(Ljava/io/InputStream;)V
at com.esa2000.pdfsign.util.Log4jLoader.loadLog4j(Log4jLoader.java:17)
at com.yinhai.sign.subcenter.PDFSignDemoPublicSeal.main(PDFSignDemoPublicSeal.java:14)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
両方のプロジェクトがインポートされました:
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
jar パッケージの競合の問題かと思いましたが、いろいろ試しましたが解決しませんでした。