gpt4 book ai didi

eclipse - 如何以编程方式从 .zip 文件导入 Eclipse 项目?

转载 作者:行者123 更新时间:2023-12-02 14:58:50 24 4
gpt4 key购买 nike

我正在尝试弄清楚如何以编程方式从存档文件(.zip)导入 Eclipse 项目 - 我想做与导入向导相同的事情,但是自动(重新-使用向导定期导入相同的项目开始感觉非常冗长)。我发现了一些相关的问题(例如 Programmatically importing an existing project into Eclipse ),但我不知道如何让同样的事情适用于 .zip 导入。

我目前的想法如下:如果我可以以某种方式从 .zip 获取项目描述,那么我可以以编程方式创建项目(根据引用的问题)。从那里,我希望我可以:

这有什么意义吗? (如果不是,我应该做什么?)如果是,我应该如何从 .zip 获取项目描述?

最佳答案

就其值(value)而言,这似乎有效(预整理):

IWorkspace workspace = this.project.getWorkspace();
IProjectDescription newProjectDescription = workspace.newProjectDescription(projectName);
IProject newProject = workspace.getRoot().getProject(projectName);
newProject.create(newProjectDescription, null);
newProject.open(null);

zipFile = new ZipFile(workspace.getRoot().getLocation() + "/" + projectName + ".zip");
IOverwriteQuery overwriteQuery = new IOverwriteQuery() {
public String queryOverwrite(String file) { return ALL; }
};
ZipLeveledStructureProvider provider = new ZipLeveledStructureProvider(zipFile);
List<Object> fileSystemObjects = new ArrayList<Object>();
Enumeration<? extends ZipEntry> entries = zipFile.entries();
while (entries.hasMoreElements()) {
fileSystemObjects.add((Object)entries.nextElement());
}
ImportOperation importOperation = new ImportOperation(newProject.getFullPath(), new ZipEntry(projectName), provider, overwriteQuery, fileSystemObjects);
importOperation.setCreateContainerStructure(false);
importOperation.run(new NullProgressMonitor());

关于eclipse - 如何以编程方式从 .zip 文件导入 Eclipse 项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12484128/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com