【idea插件开发】idea插件访问浏览器web地址

疯癫的老码农 2024-06-28 08:33:03 阅读 79

背景

以往在eclipse上面开发插件,有兴致想尝试Idea上玩一下插件开发。想要在idea上面访问web地址

概要

记录在idea上面访问web地址

正文

1、点击File->New->Project… 选择IntelliJ Platform Plugin

2、点击下一步后,输入Project Name,然后点击完成

3、新建Factory

package com.demo.view;

import com.intellij.openapi.project.Project;

import com.intellij.openapi.wm.ToolWindow;

import com.intellij.openapi.wm.ToolWindowFactory;

import com.intellij.ui.content.Content;

import com.intellij.ui.content.ContentManager;

import javafx.application.Platform;

import javafx.embed.swing.JFXPanel;

import javafx.scene.Scene;

import javafx.scene.web.WebView;

import org.jetbrains.annotations.NotNull;

import javax.swing.*;

/**

* @author twilight

* @since V1.0

*/

public class MyToolWindowFactory implements ToolWindowFactory {

@Override

public void createToolWindowContent(

@NotNull Project project,

@NotNull ToolWindow toolWindow) {

ContentManager contentManager = toolWindow.getContentManager();

JFXPanel jfxPanel = new JFXPanel();

jfxPanel.setBounds(0,0,100,200);

Platform.runLater(new Runnable() {

@Override

public void run() {

WebView webView = new WebView();

jfxPanel.setScene(new Scene(webView));

webView.getEngine().load("https://m.runoob.com/maven/");

}

});

Content labelContent =

contentManager.getFactory()

.createContent(

jfxPanel,

"",

false

);

contentManager.addContent(labelContent);

}

}

4、修改plugin.xml

<idea-plugin>

<id>com.demo.view.plugin.id</id>

<name>com.jcef.company</name>

<version>1.0</version>

<vendor email="support1@yourcompany.com" url="http://www.yourcomp1any.com">Your111Company</vendor>

<description>com.demo.view.plugin.desc/com.demo.view.plugin.desc</description>

<change-notes>com.demo.view.plugin.desccom.demo.view.plugin.desc

</change-notes>

<!-- please see http://www.jetbrains.org/intellij/sdk/docs/basics/getting_started/build_number_ranges.html for description -->

<idea-version since-build="173.0"/>

<!-- please see http://www.jetbrains.org/intellij/sdk/docs/basics/getting_started/plugin_compatibility.html

on how to target different products -->

<!-- uncomment to enable plugin in all products

<depends>com.intellij.modules.lang</depends>

-->

<!-- plugin.xml文件 -->

<extensions defaultExtensionNs="com.intellij">

<!-- Add your extensions here -->

<!-- id是必须的属性,我们进行添加 -->

<!-- anchor锚点非必须,但是为了像Gradle插件一样默认显示在右边,我们设置为right -->

<toolWindow id="web browser"

anchor="right"

factoryClass="com.demo.view.MyToolWindowFactory"

/>

</extensions>

</idea-plugin>

5、打包插件

Build->PreparePlugin Module "XXX" For Deployment 

6、安装插件

File->settings...->Plugins

Restart IDE

7、运行插件



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。