繁体   English   中英

在32位和64位Linux系统上开发Java Eclipse项目

[英]Developing a Java Eclipse project on both 32bit and 64bit Linux systems

我有一系列相关的项目,我放在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 / JFace项目模板的一部分添加的。 在eclipse插件文件夹中有一个org.eclipse.swt_3.5.2.v3557f.jar ,但更改类路径以查找它不起作用(奇怪地找不到SWT)。 查看SWT / JFace项目的.classpath文件的其余部分,这个特定的库是唯一特定于平台的库。

我把这两个版本的库放在.classpath ,这允许代码构建/运行,虽然我必须忽略构建路径错误,当我拉回笔记本电脑的时候,这个错误会传播回我的桌面。

我可以将笔记本电脑上的64位jar符号链接到32位名称,以便类路径可以找到库吗? 还有其他更好的解决方案吗?

更新 :看起来这种类型的项目必须依赖于具体的SWT片段,所以在有更好的解决方案之前,我将在两台机器上对这些片段进行符号链接,以将编译器指向正确的片段。 在其他机器(尤其是Windows)上构建/运行项目将会很有趣!! 但是当我到达那里时,我会建造那座桥梁。

不要在整个工作区中使用它。 只需对各个项目进行操作即可。 在这里运作良好。

您在源代码管理中保留了什么?

最佳实践是仅在源存储库中保留手写的源文件。 不是二进制文件,生成的文件或IDE设置。

我认为您的64位Eclipse的IDE设置存在问题,而不能使用32位的Eclipse。

只需删除工作区中的.metadata目录,然后重新导入此Eclipse中的所有项目。

您正在开发哪种类型的项目? java项目或插件项目?

如果您正在开发插件项目,则您的项目不应直接依赖于具体的swt片段(例如swt.gtk,swt.win32)。 它应该依赖于主机插件'org.eclipse.swt',即swt的实际实现是不同平台中的不同片段。

如果您正在开发一个需要swt作为第三方要求的java项目。 您可以为32bit和64bit eclipse安装eclipse delta软件包。

为避免平台问题,您还可以考虑使用Maven。 使用Maven 2或3,可以很容易地解决配置文件平台问题的可选组合。 使用Eclipse的几个Maven插件,可以直接将Maven项目导入Eclipse。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM