Eclipse IDE插件开发:将文件从插件jar复制到活动项目文件夹

Tha*_*Guy 1 java eclipse eclipse-plugin

我正在为eclipse开发一个插件.插件的目的是使用Acceleo生成代码.

我想将生成器插件jar中的目录内容复制到插件生成代码后生成文件的文件夹中.

org.plugin.generator/framework || 将内容复制到:||\/ Workspace/ProjectFolder/generatedFiles/classes

我可以获取路径,但我无法弄清楚如何从jar中提取框架文件夹并将其内容复制到当前项目文件夹中.

有人可以提供一些提示吗?我是Eclipse插件开发的初学者.此外,这是我的第一个问题,虽然我已经浏览了1 - 2年.

Kon*_*hik 5

这是一个粗略的代码片段,用于从插件中读取任何文件并将其写入项目.我不知道是否有办法列出文件夹文件夹中的文件,但您始终可以硬编码需要复制的文件列表.

Bundle bundle = Platform.getBundle( "your.plugin.id" );
InputStream stream = FileLocator.openStream( bundle, "path.in.plugin", false );
IProject project = ResourcesPlugin.getWorkspace().getRoot().getProject( "your.project" );
IFile file = project.getFile( "something/abc.txt" );
file.create( stream, true, null );
Run Code Online (Sandbox Code Playgroud)

您需要将流的异常处理和关闭添加到上面的代码段中.