次のような状況があります。
同じワークスペース内の 2 つの Eclipse プロジェクト、Apa と Bepa (簡潔にするために仮名)。
プロジェクト Apa は、プロジェクト Bepa を参照 (インクルード) します。
Bepa にパブリック メソッド b() を持つクラス X があります。プロジェクト Bepa では、Xb() を直接呼び出すと問題なく動作します。
ただし、Apa で X のインスタンスへの参照を作成し、この参照に対して b() を呼び出すと、次のようになります。
Exception in thread "main" java.lang.IllegalAccessError: tried to access method java_cup.runtime.Symbol.<init>(II)V from class de.uni_freiburg.informatik.ultimate.smtinterpol.util.MySymbolFactory$LineColumnSymbol
at de.uni_freiburg.informatik.ultimate.smtinterpol.util.MySymbolFactory$LineColumnSymbol.<init>(MySymbolFactory.java:31)
at de.uni_freiburg.informatik.ultimate.smtinterpol.util.MySymbolFactory.startSymbol(MySymbolFactory.java:95)
at java_cup.runtime.LRParser.parse(LRParser.java:393)
at de.uni_freiburg.informatik.ultimate.smtinterpol.smtlib2.ParseEnvironment.parseStream(ParseEnvironment.java:152)
at de.uni_freiburg.informatik.ultimate.smtinterpol.smtlib2.ParseEnvironment.parseScript(ParseEnvironment.java:118)
at de.uni_freiburg.informatik.ultimate.smtinterpol.smtlib2.SMTLIB2Parser.run(SMTLIB2Parser.java:47)
at de.uni_freiburg.informatik.ultimate.smtinterpol.Main.main(Main.java:121)
at de.uka.ilkd.key.keynterpol.KeYnterpolInterface.main(KeYnterpolInterface.java:36)
私が理解していることから、犯人はBが参照するサードパーティのjarです。しかし、私は一生、ApaではなくBepa内からしか使用できない理由を理解できません。どんな助けでも大歓迎です。