Необходимо ли передавать следующий флаг --add-opens", "java.base/java.lang=ALL-UNNAMED при использовании AspectJ в JDK-17. Если я не включаю этот флаг, я получаю следующую ошибку.
[AppClassLoader@251a69d7] предупреждение: определить сгенерированный класс не удалось — (NullPointerException) Невозможно вызвать «java.lang.reflect.Method.invoke(Object, Object[])», потому что «org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.bindTo_Method» имеет значение null
Невозможно вызвать «java.lang.reflect.Method.invoke» (Object, Object[])», потому что «org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.bindTo_Method» имеет значение null
java.lang.NullPointerException: невозможно вызвать «java.lang.reflect.Method.invoke(Object, Object) [])", потому что "org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.bindTo_Method" имеет значение null
в org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.defineClass(ClassLoaderWeavingAdaptor.java:1099)
в org. аспектj.weaver.loadtime.ClassLoaderWeavingAdaptor.access$300(ClassLoaderWeavingAdaptor.java:66)
в org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor$SimpleGeneratedClassHandler.acceptClass(ClassLoaderWeavingAdaptor.java:150)
в org.aspectj .weaver.tools.WeavingAdaptor$WeavingClassFileProvider$1.acceptResult(WeavingAdaptor.java:916)
в org.aspectj.weaver.bcel.BcelWeaver.weaveAndNotify(BcelWeaver.java:1430)
в org.aspectj. weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1192)
на org.aspectj.weaver.tools.WeavingAdaptor.getWovenBytes(WeavingAdaptor.java:549)
на org.aspectj.weaver.tools. WeavingAdaptor.weaveClass(WeavingAdaptor.java:385)
в org.aspectj.weaver.loadtime.Aj.preProcess(Aj.java:115)
в org.aspectj.weaver.loadtime.ClassPreProcessorAgentAdapter.transform( ClassPreProcessorAgentAdapter.java:51)
в java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:244)
в java.instrument/sun.instrument.TransformerManager.transform(TransformerManager. java:188)
в java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:541)
в java.base/java.lang.ClassLoader.defineClass1(собственный метод)
в java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
в java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
в java. base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
в java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
в java. base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
в java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
в java. base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
в java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
в java. base/java.lang.Class.forName0(собственный метод)
в java.base/java.lang.Class.forName(Class.java:467)
в java.base/sun.launcher.LauncherHelper .loadMainClass(LauncherHelper.java:791)
на java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:686)
Ошибка: невозможно инициализировать основной класс org.example.Main
Причина: java.lang.NoClassDefFoundError: org/example/Main$AjcClosure1
Репродуктор. Использование сборки Gradle
Подробнее здесь: https://stackoverflow.com/questions/787 ... ng-aspectj
Необходимые аргументы JVM при использовании AspectJ ⇐ JAVA
Программисты JAVA общаются здесь
-
Anonymous
1721816986
Anonymous
Необходимо ли передавать следующий флаг --add-opens", "java.base/java.lang=ALL-UNNAMED при использовании AspectJ в JDK-17. Если я не включаю этот флаг, я получаю следующую ошибку.
[AppClassLoader@251a69d7] предупреждение: определить сгенерированный класс не удалось — (NullPointerException) Невозможно вызвать «java.lang.reflect.Method.invoke(Object, Object[])», потому что «org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.bindTo_Method» имеет значение null
Невозможно вызвать «java.lang.reflect.Method.invoke» (Object, Object[])», потому что «org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.bindTo_Method» имеет значение null
java.lang.NullPointerException: невозможно вызвать «java.lang.reflect.Method.invoke(Object, Object) [])", потому что "org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.bindTo_Method" имеет значение null
в org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor.defineClass(ClassLoaderWeavingAdaptor.java:1099)
в org. аспектj.weaver.loadtime.ClassLoaderWeavingAdaptor.access$300(ClassLoaderWeavingAdaptor.java:66)
в org.aspectj.weaver.loadtime.ClassLoaderWeavingAdaptor$SimpleGeneratedClassHandler.acceptClass(ClassLoaderWeavingAdaptor.java:150)
в org.aspectj .weaver.tools.WeavingAdaptor$WeavingClassFileProvider$1.acceptResult(WeavingAdaptor.java:916)
в org.aspectj.weaver.bcel.BcelWeaver.weaveAndNotify(BcelWeaver.java:1430)
в org.aspectj. weaver.bcel.BcelWeaver.weave(BcelWeaver.java:1192)
на org.aspectj.weaver.tools.WeavingAdaptor.getWovenBytes(WeavingAdaptor.java:549)
на org.aspectj.weaver.tools. WeavingAdaptor.weaveClass(WeavingAdaptor.java:385)
в org.aspectj.weaver.loadtime.Aj.preProcess(Aj.java:115)
в org.aspectj.weaver.loadtime.ClassPreProcessorAgentAdapter.transform( ClassPreProcessorAgentAdapter.java:51)
в java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:244)
в java.instrument/sun.instrument.TransformerManager.transform(TransformerManager. java:188)
в java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:541)
в java.base/java.lang.ClassLoader.defineClass1(собственный метод)
в java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1012)
в java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:150)
в java. base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:862)
в java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:760)
в java. base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:681)
в java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:639)
в java. base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188)
в java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)
в java. base/java.lang.Class.forName0(собственный метод)
в java.base/java.lang.Class.forName(Class.java:467)
в java.base/sun.launcher.LauncherHelper .loadMainClass(LauncherHelper.java:791)
на java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:686)
Ошибка: невозможно инициализировать основной класс org.example.Main
Причина: java.lang.NoClassDefFoundError: org/example/Main$AjcClosure1
Репродуктор. Использование сборки Gradle
Подробнее здесь: [url]https://stackoverflow.com/questions/78787212/necessary-jvm-arguments-when-using-aspectj[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия