我已经将一系列相关的项目置于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 /JFace项目模板的一部分添加的。eclipse文件夹中有一个org.eclipse.swt_3.5.2.v3557f.jar,但是更改类路径以查找它不起作用(奇怪的是,找不到SWT )。查看SWT/JFace项目的.classpath文件的其余部分,这个特定的库是唯一一个如此特定于平台的库。
我将两个版本的库都放在.classpath中,这允许代码构建/运行,尽管我必须忽略构建路径错误,并且当我将笔记本电脑的更改拉回来时,这个错误会传播回我的桌面。
我能否将笔记本上的64位jar符号链接到32位名称,这样类路径就可以找到库了吗?还有更好的解决方案吗?
UPDATE:看起来这种类型的项目必须依赖于具体的SWT片段,所以在找到更好的解决方案之前,我将将这两台机器上所讨论的片段符号链接起来,以便将编译器指向正确的片段。在其他机器(特别是Windows)上构建/运行项目将是非常有趣的!但等我到了那里我会建那座桥的。
发布于 2010-12-03 22:40:10
您在源代码管理中到底保留了什么?
最好的做法是只将手写的源文件保存在源存储库中。不是二进制文件、生成的文件或IDE设置。
我认为您的64位Eclipse的IDE设置有问题,没有使用32位Eclipse。
只需删除工作区中的.metadata目录,并重新导入此Eclipse中的所有项目即可。
发布于 2010-12-03 22:38:10
不要用整个工作空间来做这件事。只需做个别的项目。在这里效果很好。
发布于 2010-12-04 14:31:20
您正在开发的项目类型?java项目还是插件项目?
如果您正在开发插件项目,那么您的项目不应该直接依赖于具体的swt片段(例如swt.gtk、swt.win32)。它应该依赖于主机插件“org.eclipse.swt”,即swt的实际实现是不同平台上的不同片段。
如果您正在开发一个要求swt作为第三方需求的java项目。您可以为32位和64位eclipse安装eclipse包。
https://stackoverflow.com/questions/4350261
复制相似问题