私はEclipseプラグインを作成しています。プラグインでは、私のためのコマンド文字列を作ることができる関数を書いた。文字列には "-cp jar_path"が含まれています。 jarパスはeclipseの "jarの追加"ボタンから構成されます(プロジェクトのプロパティー設定では、 "jarの追加"は "java build path - > libraries"の下にあります)。 jarファイルの絶対パスを取得する必要がありますが、「jarファイルを追加」を使用すると、次のコードを使用して相対パスしか取得できません。私は "外部ジャーを追加"を使用することは分かりますが、 "ジャーを追加"する必要があります。アプローチはありますか? もう1つの質問は、「参照されたライブラリ」の下に追加されたjarを右クリックし、「show in - > properties」をクリックすると、IDEがjarの絶対位置を取得できることです。私は多分IDEはworkspace/.metadata/.plugins/com.eclipse.core.resources/.projectsから取得すると思います。 しかし、それが本当であっても、一般的な読者がフォーマットを解析できないため、これらのファイルを直接読み取ることはできません。eclipseプラグインを開発する場合、「Jarを追加する」を使ってjarファイルの絶対パスを取得できますか?
IPackageFragmentRoot[] roots = JavaCore.create(project).getPackageFragmentRoots();
for(IPackageFragmentRoot root : roots)
{
IClasspathEntry entry = root.getResolvedClasspathEntry();
if(IClasspathEntry.CPE_LIBRARY == entry.getEntryKind())
{
root.getRawClasspathEntry();
String cp = entry.getPath().toOSString();
}
}
これは従うことが非常に困難です。何が 'jars'ボタンを追加するのですか?いくつかのコードを見せてください。 –
質問を編集して、コードやその他の詳細を入力してください。 –
'IProject'クラスは' .projects'メタデータの情報へのインタフェースです。 –