java.lang.ClassNotFoundException во время инструктажа приложения eclipse rcp - PullRequest
0 голосов
/ 25 июня 2019

Я пытался внедрить оператор вызова метода, используя javassist в каждый метод некоторых желаемых классов. Оператор соответствует классу в java-агенте jar.Например, если у моего агента есть такой класс, как abHelperClass, я ввожу abHelperClass.call ();в начале каждого класса, использующего javassist.

Я пытался использовать веб-приложение с весенней загрузкой, и агент работает нормально, но с приложением RCP выдает

java.lang.ClassNotFoundException:abHelperClass в org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal (BundleLoader.java:506) в org.eclipse.osgi.internal.loader.BundleLoader.findClass (BundleLoader.java:422) в org.gil.internal.loader.BundleLoader.findClass (BundleLoader.java:410) в org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass (DefaultClassLoader.java:107) в java.lang.ClassLoader.loadClass (ClassLoader).

Нужно ли загружать классы, находящиеся внутри agent-jar, с помощью загрузчика классов eclipse? Кстати, я использую метод основной агент, а не premain .

1 Ответ

0 голосов
/ 26 июня 2019

Eclipse основан на OSGi и имеет систему модулей, которая применяется принудительно.

HelperClass должен находиться в пути к классу Eclipse Plugin, где он должен использоваться.

...