0

A = 私が書いた maven プラグイン

B = ビルド プロセスの一部として A を使用する Maven プロジェクト


Maven を使用して A をビルドすると、aspectj は期待どおりに動作し、単体テスト中にポイントカットにヒットしました。Maven を使用して A をビルドするので、aspectj-maven-plugin を使用してビルドします。

問題は、maven を使用して B をビルドし、プラグインの依存関係として A を含める場合、ビルド プロセス中に A が実行されている間、ポイントカットにヒットしないことです。

これを解決するために、Aspectj-maven-plugin を B に含めようとしましたが、うまくいきませんでした。この問題を解決するために、B でさまざまな形式の構成も試しました。現在、B の構成は次のとおりです。

                   <plugin>
                        <groupId>org.codehaus.mojo</groupId>
                        <artifactId>aspectj-maven-plugin</artifactId>
                        <version>1.4</version>
                        <executions>
                            <execution>
                                <goals>
                                    <goal>compile</goal>
                                    <goal>test-compile</goal>
                                </goals>
                            </execution>
                        </executions>
                        <dependencies>
                            <dependency>
                                <groupId>org.aspectj</groupId>
                                <artifactId>aspectjrt</artifactId>
                                <version>${aspectj.version}</version>
                            </dependency>
                        </dependencies>
                        <configuration>
                            <source>${maven.compiler.source}</source>
                            <target>${maven.compiler.target}</target>
                            <complianceLevel>${maven.compiler.target}</complianceLevel>
                            <forceAjcCompile>true</forceAjcCompile>
                            <showWeaveInfo>true</showWeaveInfo>
                            <weaveWithAspectsInMainSourceFolder>true</weaveWithAspectsInMainSourceFolder>
                            <encoding>UTF-8</encoding>
                            <aspectLibraries>
                                <aspectLibrary>
                                    <groupId>com</groupId>
                                    <artifactId>A</artifactId>
                                </aspectLibrary>
                            </aspectLibraries>
                            <weaveDependencies>
                                <weaveDependency>
                                    <groupId>com</groupId>
                                    <artifactId>A</artifactId>
                                </weaveDependency>
                            </weaveDependencies>
                        </configuration>
                    </plugin>
4

0 に答える 0