以编程方式生成 Eclipse 项目

2022-09-03 01:46:24

我使用 eclipse 来处理一个应用程序,该应用程序最初是独立于 eclipse 创建的。因此,应用程序的目录结构显然不是对 eclipse 友好的。

我想以编程方式为应用程序生成一个项目。和 文件很容易弄清楚,而且我了解到项目存储在工作区中.project.classpath<workspace>/.metadata/.plugins/org.eclipse.core.resources/.projects

不幸的是,这里的一些文件(特别是)似乎是以某种二进制格式编码的。在预感上,我试图用 - 没有骰子来反序列化它。因此,它似乎不是序列化的java对象。.locationObjectInputStream

我的问题是:有没有办法自动生成这些文件?

对于好奇的人,我试图反序列化文件的错误如下:.location

java.io.StreamCorruptedException: java.io.StreamCorruptedException: invalid stream header: 40B18B81

更新:我的目标是能够用命令行脚本或程序替换“新建 Java 项目”向导。原因是所讨论的应用程序实际上是一个非常大的J2EE /weblogic应用程序,我喜欢将其分解为一个庞大的(近20个)子项目集合。更复杂的是,我们对 SCM 使用 clearcase,并为每个版本创建一个新的分支。这意味着我需要为我创建的每个开发视图(分支)重新创建这些项目。这种情况经常发生,足以实现自动化。


答案 1

你应该能够通过编写一个小的Eclipse插件来实现这一点。您甚至可以将其扩展为“无头”RCP应用程序,并传入所需的命令行参数。

用于创建项目的准系统代码是:

IProgressMonitor progressMonitor = new NullProgressMonitor();
IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
IProject project = root.getProject("DesiredProjectName");
project.create(progressMonitor);
project.open(progressMonitor);

只需查看“导入项目”向导的 eclipse 代码,即可更好地了解该如何使用它。


答案 2

使用电子逆变

它可以从蚂蚁创建日食项目。


推荐