Я использую плагин Gradle AspectJ, чтобы сплести некоторый производственный аспект в тестовый Java-код. Я ожидал бы, чтобы это работало из коробки с плагином, но, очевидно, что это не так, как предназначалась здесь: https://github.com/sedubois/gradle-aspectj-poc/tree/dc44f529831a485fcff8f4889dba8098784dddb4Аспект производства ткачества в класс испытаний с Gradle AspectJ
Переплетение UnsupportedOperationAspect
в MainSevice
(оба под src/main/java
) работает, но плетение этого же аспект в TestService
(под src/test/java
) нет.
Я новичок в Groovy, Gradle и AspectJ и не выяснил, должен ли я добавить конфигурацию testAspectpath
или аналогичную конфигурацию?
EDIT1: кажется, связаны между собой, но iajc выдает предупреждение:
... :compileTestAspect [ant:iajc] [warning] incorrect classpath: [...]\gradle-aspectj-poc\build\resources\main ...
edit2: Я простодушно добавил этот код к Gradle зависимостей:
ajInpath fileTree(dir: "src/test/java")
aspectpath fileTree(dir: "src/test/java")
testAjInpath fileTree(dir: "src/test/java")
testAspectpath fileTree(dir: "src/test/java")
Это не помогает, первые испытания, а второй - как обычно, с этими новыми сообщениями:
... :compileAspect [ant:iajc] [warning] build config error: skipping missing, empty or corrupt aspectpath entry: [...]\gradle-aspectj-poc\src\test\java\com\hello\aop\TestService.java [ant:iajc] [warning] build config error: skipping missing, empty or corrupt inpath entry: [...]\gradle-aspectj-poc\src\test\java\com\hello\aop\TestService.java ... :compileTestAspect [ant:iajc] [warning] build config error: skipping missing, empty or corrupt aspectpath entry: [...]\gradle-aspectj-poc\src\test\java\com\hello\aop\TestService.java [ant:iajc] [warning] build config error: skipping missing, empty or corrupt inpath entry: [...]\gradle-aspectj-poc\src\test\java\com\hello\aop\TestService.java [ant:iajc] [warning] incorrect classpath: [...]\gradle-aspectj-poc\build\resources\main ...
Работает, спасибо! –
Можете ли вы уточнить, где именно это происходит? Та! – HankCa
В разделе «Зависимости» см. Документы на странице https://github.com/eveoh/gradle-aspectj – MikeN