Аннотация Java - как изменить AST (Access com.sun.tools.javac.tree Package)?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Аннотация Java - как изменить AST (Access com.sun.tools.javac.tree Package)?

Сообщение Anonymous »

Я пишу процессор аннотации в качестве доказательства концепции (реализовано как проект Maven). Он обнаруживает классы, аннотированные с помощью моего пользовательского @funnybooleans , которые обменяются всеми флами и наоборот. Я был в состоянии пройти через всю иерархию AST, пока я не обратился к экземпляру LiteralTree , содержащий логическое значение. AST Inferfaces в com.sun.source.tree читаются только. Во время выполнения я вижу, что конкретные реализации поступают от com.sun.tools.javac.tree , и они действительно определяют операции на записи. Похоже, что после Java 9 модуль JDK.compiler явно сохраняет com.sun.tools.javac.tree private.
Я тоже пытался размышлять, но, конечно, я получил незаконное количество. Это хорошо сработало для составления самого процессора аннотации, но, похоже, не оказывает никакого влияния, когда другой модуль пытается, поэтому используйте процессор аннотации: < /p>

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


org.apache.maven.plugins
maven-compiler-plugin
${maven-compiler-plugin.version}

17
17
UTF-8

--add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
--add-exports=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED




< /code>
Я вижу, что есть примеры, использующие классы от com.sun.tools.javac.tree. Пример. Я также проверил Ломбока и увидел, что в их исходном коде они также используют его, но я не смогу определить, как (проект довольно сложный). Есть ли какая -то зависимость Maven, которую я должен добавить? Некоторые примеры в Интернете упоминаются зависимость от JDK Lib/Tools.jar 
, но такие примеры, кажется, старые, поскольку эта JAR не существует в современных JDK. Могу ли я получить доступ к com.sun.tools.javac.tree, или получить в свои руки аст каким -то другим?


Подробнее здесь: https://stackoverflow.com/questions/796 ... vac-tree-p
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Аннотация Java - как изменить AST (Access com.sun.tools.javac.tree Package)?
    Anonymous » » в форуме JAVA
    0 Ответы
    3 Просмотры
    Последнее сообщение Anonymous
  • Аннотация Java - как изменить AST (Access com.sun.tools.javac.tree Package)?
    Anonymous » » в форуме JAVA
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Ошибка пакета mvn - Класс com.sun.tools.javac.tree.JCTree$JCImport не имеет поля-члена «com.sun.tool»
    Anonymous » » в форуме JAVA
    0 Ответы
    71 Просмотры
    Последнее сообщение Anonymous
  • Jitpack Java 17 не может распознать --add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
    Anonymous » » в форуме JAVA
    0 Ответы
    57 Просмотры
    Последнее сообщение Anonymous
  • Jitpack Java 17 не может распознать --add-opens=jdk.compiler/com.sun.tools.javac.tree=ALL-UNNAMED
    Anonymous » » в форуме Android
    0 Ответы
    39 Просмотры
    Последнее сообщение Anonymous

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