私が開発したプラグインで ClassNotFoundException がスローされています。見つけられないクラスは確実に存在し、関連するプロジェクトは実行中のプロジェクトの pom.xml ファイルに次のように依存関係として含まれています。
<dependency>
<groupId>com.example</groupId>
<artifactId>project-one</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
私のプラグインは、次のように実行中の pom.xml に含まれています。
<build>
<plugins>
<plugin>
<groupId>com.example</groupId>
<artifactId>project-two-plugin</artifactId>
<version>1.0</version>
<executions>
<execution>
<configuration>
<customSettingOne>
setting
</customSettingOne>
</configuration>
<phase>prepare-package</phase>
<goals>
<goal>some-task</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
私のプラグインクラスは次のとおりです。
/**
* @goal some-task
*
* @requiresDependencyResolution compile
*/
public class MyPluginMojo extends AbstractMojo {
/**
* Directory to save the CSV files to.
*
* @parameter alias="customSettingOne"
* @required
*/
private File customSettingOne;
}
私はこのコードを使用して試しました:
Apache Maven 2.2.1 (r801777; 2009-08-06 20:16:01+0100)
およびEclipse m2eで使用される組み込みバージョン
Embedded (3.0.2/1.0.200.20111228-1245
プラグイン コードが ProjectOne からクラスをロードしようとすると、ClassNotFoundException が発生します。
どうすればこの問題の根底にたどり着くことができるか、誰にもアイデアがありますか? プラグインで使用されているクラスパスを検査またはダンプすることは可能ですか?