`
房价会降吗
  • 浏览: 63008 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

Java工具IntelliJ IDEA如何定义语言和文件类型详细说明

阅读更多

使用Intellij IDEA的时候,用户可以根据自身需求定义所支持的语言和文件类型,下面我们就对这一过程进行详细的解释和说明。

 

1 定义语言

package com.simpleplugin;
 
import com.intellij.lang.Language;
 
public class SimpleLanguage extends Language {
    public static final SimpleLanguage INSTANCE = new SimpleLanguage();
 
    private SimpleLanguage() {
        super("Simple");
    }
}

 

 

2 定义图标

将图标复制到com.simple.plugin.icons程序包中。

package com.simpleplugin;
 
import com.intellij.openapi.util.IconLoader;
 
import javax.swing.*;
 
public class SimpleIcons {
    public static final Icon FILE = IconLoader.getIcon("/com/simpleplugin/icons/jar-gray.png");
}

 

 

3 定义文件类型

package com.simpleplugin;
 
import com.intellij.openapi.fileTypes.LanguageFileType;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
 
import javax.swing.*;
 
public class SimpleFileType extends LanguageFileType {
    public static final SimpleFileType INSTANCE = new SimpleFileType();
 
    private SimpleFileType() {
        super(SimpleLanguage.INSTANCE);
    }
 
    @NotNull
    @Override
    public String getName() {
        return "Simple file";
    }
 
    @NotNull
    @Override
    public String getDescription() {
        return "Simple language file";
    }
 
    @NotNull
    @Override
    public String getDefaultExtension() {
        return "simple";
    }
 
    @Nullable
    @Override
    public Icon getIcon() {
        return SimpleIcons.FILE;
    }
}

 

 

4 定义一个文件类型

factory

package com.simpleplugin;
 
import com.intellij.openapi.fileTypes.FileTypeConsumer;
import com.intellij.openapi.fileTypes.FileTypeFactory;
import org.jetbrains.annotations.NotNull;
 
public class SimpleFileTypeFactory extends FileTypeFactory{
    @Override
    public void createFileTypes(@NotNull FileTypeConsumer fileTypeConsumer) {
        fileTypeConsumer.consume(SimpleFileType.INSTANCE, "simple");
    }
}

 

 

5 注册文件类型

factory

<fileTypeFactory implementation="com.simpleplugin.SimpleFileTypeFactory"/>

 

 

6 运行项目

创建一个扩展名为.simple的文件,IntelliJ IDEA将自动将其与定义的语言联系起来。

 

 

  • 大小: 73.1 KB
6
6
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics