所以我已经能够在Eclipse插件中成功生成IJavaProject,现在我想向这个IJavaProject添加包。这些包位于文件系统上,由用户选择。我创建了两个文件夹,“bin”和“src”。
我希望能够将文件(特别是包含软件包的目录)添加到我的项目中,就像在eclipse中将文件拖放到项目中一样。
我如何以编程方式将这些文件调整为Java模型格式,以便将它们添加到我的IJavaProject中?如果我甚至只能将.java文件读入模型,那就太棒了。
我在想也许它与IClasspath有关,但我真的无法找到它的任何信息。然而,我可能会忽略它。
提前致谢。
答案 0 :(得分: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的一个实例。