一連の関連プロジェクトをGitの管理下に置き(これらのプロジェクトはすべて、Gitリポジトリのトップレベルである同じワークスペースにあります)、デスクトップ(32ビット)からラップトップ(64ビット)に複製しました。だから私はどこでもそれらに取り組むことができます。ワークスペース.metadata
フォルダーは除外されますが、プロジェクトフォルダー内のすべてが追跡されます。
ラップトップで複製されたワークスペースを開くと、次のエラーが表示されました。
Project 'project' is missing required library:
'/usr/eclipse/plugins/org.eclipse.swt.gtk.linux.x86_3.5.2.v3557f.jar'
明らかに、64ビットのEclipseには32ビットのライブラリがありませんが、これをどのように解決する必要があるのか興味があります。
そのライブラリは、Window Builder SWT /JFaceProjectテンプレートの一部として追加されました。Eclipseプラグインフォルダーにがありorg.eclipse.swt_3.5.2.v3557f.jar
ますが、それを探すようにクラスパスを変更しても機能しません(奇妙なことに、SWTが見つかりません)。.classpath
SWT / JFaceプロジェクトのファイルの残りの部分を見ると、この特定のライブラリは、プラットフォーム固有の唯一のライブラリです。
ライブラリの両方のバージョンをに配置します。.classpath
これにより、コードをビルド/実行できますが、ビルドパスエラーを無視する必要があります。このエラーは、ラップトップの変更をプルバックするとデスクトップに伝播します。
ラップトップの64ビットjarを32ビット名にシンボリックリンクして、クラスパスがライブラリを見つけられるようにすることはできますか?別のより良い解決策はありますか?
更新:このタイプのプロジェクトは具体的なSWTフラグメントに依存する必要があるようです。したがって、より良い解決策が見つかるまで、両方のマシンで問題のフラグメントをシンボリックリンクして、コンパイラーを正しいフラグメントに誘導します。他のマシン(特にWindows)でプロジェクトをビルド/実行すると、!!楽しい!! でもそこに着いたらその橋を架けます。