Не могу получить доступ к классу com.sun.tools.javac.api.JavacTrees (в модуле jdk.compiler)JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Не могу получить доступ к классу com.sun.tools.javac.api.JavacTrees (в модуле jdk.compiler)

Сообщение Anonymous »

Я настроил обработчик аннотаций с помощью java21. Pom-файл проекта, в котором расположен обработчик аннотаций, показан ниже:

Код: Выделить всё

         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0

org.example
xxx-xx
1.0-SNAPSHOT


xxx-xx-xx
jar

async-log-client
http://maven.apache.org


UTF-8
21




junit
junit
3.8.1
test


com.google.auto.service
auto-service





org.apache.maven.plugins
maven-compiler-plugin

21
21
UTF-8

--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED






Я использую команду mvn clean install для упаковки в локальный репозиторий. Я получаю следующую ошибку, когда использую его в качестве зависимости от других проектов

Код: Выделить всё

class org.example.MyCustomProcessor (in unnamed module @0x3b48e183) cannot access class com.sun.tools.javac.api.JavacTrees (in module jdk.compiler) because module jdk.compiler does not export com.sun.tools.javac.api to unnamed module @0x3b48e183
Я попробовал импортировать модули jdk в проект, в котором используется этот специальный обработчик аннотаций.

Код: Выделить всё

  


org.apache.maven.plugins
maven-compiler-plugin

21
21
UTF-8

--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.comp=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.file=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.main=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.model=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.parser=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.processing=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED





Но, похоже, это все равно не работает. Моя цель — создать проект процессора аннотаций, похожий на ломбок. Другие проекты могут напрямую зависеть от него при запуске обработчика аннотаций


Подробнее здесь: https://stackoverflow.com/questions/787 ... k-compiler
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»