eclipse插件-将非java扩展文件视为java文件

eclipse插件-将非java扩展文件视为java文件,java,eclipse-plugin,Java,Eclipse Plugin,我们正在开发一个eclipse插件,我们有一个像“.xyz”这样的扩展,但实际上 包含java代码。createCompilationUnitFrom()只接受扩展名为“.java”的文件。JavaCore具有JAVA_SOURCE_CONTENT_类型,它返回它视为的扩展 Java源文件 我的问题是如何将“.xyz”添加到此列表中?我希望JavaCore将扩展名为“.xyz”的文件视为java源文件 任何指针都会非常有用。我编写了一个扩展名来处理具有不同结尾的文件“.xyz” 您必须定义一个可

我们正在开发一个eclipse插件,我们有一个像“.xyz”这样的扩展,但实际上 包含java代码。createCompilationUnitFrom()只接受扩展名为“.java”的文件。JavaCore具有JAVA_SOURCE_CONTENT_类型,它返回它视为的扩展 Java源文件

我的问题是如何将“.xyz”添加到此列表中?我希望JavaCore将扩展名为“.xyz”的文件视为java源文件


任何指针都会非常有用。

我编写了一个扩展名来处理具有不同结尾的文件“.xyz”

您必须定义一个可以打开此文件的编辑器,并且必须定义一个可以生成此文件的生成器

包含java源代码的文件的编辑器实现可以是,您可以从EclipseJava编辑器进行扩展,并实现扩展点“org.eclipse.ui.editors”。将文件扩展名添加到编辑器扩展名首选项“extensions”

当您打开特定文件时,将使用您添加的编辑器。 我现在不知道您是否可以向eclipse插件中定义的编辑器添加额外的扩展。我想你必须自己做

当您想要像在eclipse中一样构建特定文件时,必须使用“org.eclipse.core.resource.builders”实现一个新的构建器。 我没有一个例子,但关键词是“nature”(org.eclipse.core.resources.natures)。 就我现在所知,您可以将此生成器添加到您定义的项目中。我不确定是否可以将这些构建器添加到现有项目中,比如“Java插件项目”


当您只想向文件扩展名添加编辑器时,可以在首选项页面中执行此操作

“常规”-“编辑器”-“文件关联”

在eclipse3.1中引入了对java类源的不同扩展的支持。
提到eclipse3.2(用于支持包含Java源代码的
.aj
文件):



您只是希望在Java编辑器中打开文件,还是希望处理编译单元?最好两者都是。但汇编的优先级更高。@Rich:谢谢你,先生。你应该看看我在书中提出的另一个非常讨厌的黑客;)是的,我看到了,这是一个令人讨厌的黑客,你没有+1
<content-type id="ajSource" name="AspectJ Source File" 
              base-type="org.eclipse.jdt.core.javaSource"
              file-extensions="aj"/>