2011-09-09 2 views
1

私は現在、Mavenプラグインを作成しており、別のJavaプロジェクトのクラスパスを取得する必要があります。私は現在のJavaプロジェクトから別のJavaプロジェクトのクラスパスを取得することが可能かどうかを知りたいですか?と別のJavaプロジェクトのクラスパスを取得するにはどうすればよいですか?

List classpathElements = project.getCompileClasspathElements(); 
classpathElements.add(project.getBuild().getOutputDirectory()); 
classpathElements.add(project.getBuild().getTestOutputDirectory()); 
URL urls[] = new URL[classpathElements.size()]; 
for (int i = 0; i < classpathElements.size(); ++i) { 
    urls[i] = new File((String) classpathElements.get(i)).toURL(); 
} 
return new URLClassLoader(urls, this.getClass().getClassLoader()); 

:あなたはプラグインから新しいクラスローダを作成する必要が

:事前「別のJavaプロジェクト」は「あなたのプラグインをdeclearsプロジェクト」を意味している場合

+1

他のJavaプロジェクトのクラスパスを取得することは、Mavenでは意味を持ちません。あなたが実際に何をしたいのかを記述します(つまり、あなたが必要とする情報とそれを使って何をやるか)。 – parsifal

答えて

1

で おかげで、ここに私の答えです新しいクラスローダー、プロジェクトのクラスで何か(クラス、リフレクション、コード生成)を行うことができます

hibernate3-maven-pluginプロジェクトの注釈付きクラスからマッピングを生成するのに同じトリックを使用

関連する問題