0

所以我已经能够从我的 Eclipse 插件中成功生成一个 IJavaProject,现在我想将包添加到这个 IJavaProject。这些包位于文件系统上,由用户选择。我创建了两个文件夹,“bin”和“src”。

我希望能够将文件(特别是包含包的目录)添加到我的项目中,就像在 Eclipse 中将文件拖放到项目中一样。

我将如何以编程方式将这些文件调整为 Java 模型格式,以便可以将它们添加到我的 IJavaProject 中?如果我什至只能将 .java 文件读入模型,那就太好了。

我在想也许它与 IClasspath 有关,但我真的找不到任何关于它的信息。但是,我可能会忽略它。

提前致谢。

4

1 回答 1

0

通过 API 的一些搜索,我找到了一个解决方案。

您可以通过调用从项目中创建一个包:

(在某处宣布......)

IFolder srcFolder = myJavaProject.getProject().getFolder("src");

假设您已经在项目中创建了合适的文件夹“src”。

IPackageFragment frag = myJavaProject.getPackageFragmentRoot(srcFolder)
    .createPackageFragment("mypackage",false, null);
IFile newFile = ((IFolder)frag.getResource)).getFile(name);
FileInputStream fis = new FileInputStream(new File("myFile.java");
newFile.create(fis, false, null);

您不必将文件声明为 ICompilationUnits 或类似的东西,因为如果您将 java 源文件添加到已声明为包的元素,那么它会自动将该源文件识别为 Java 模型的一部分,也就是ICompilationUnit 的实例。

于 2012-06-15T13:10:55.667 回答