标签: intellij-plugin

Intellij Idea 插件,创建 Kotlin PSI Visitor

我正在创建一个访问者来解析KtFile. 问题是,我在调试器中只命中了一个@override方法visitKtFile,尽管我也在另一种方法中放置了一些其他制动点,请为访问者找到附加的代码。

public class TestVisitor extends KtVisitorVoid {

@Override
public void visitProperty(@NotNull KtProperty property) {
    super.visitProperty(property);
}

@Override
public void visitClass(@NotNull KtClass klass) {
    super.visitClass(klass);
}

@Override
public void visitNamedFunction(@NotNull KtNamedFunction function) {
    super.visitNamedFunction(function);
}

@Override
public void visitKtElement(@NotNull KtElement element) {
    super.visitKtElement(element);
}

@Override
public void visitKtFile(@NotNull KtFile file) {
    super.visitKtFile(file);
}

@Override
public void visitDeclaration(@NotNull KtDeclaration dcl) {
    super.visitDeclaration(dcl);
}
}
Run Code Online (Sandbox Code Playgroud)

这是操作的代码,

public class HelloAction extends AnAction {
public HelloAction() {
    super("Hello"); …
Run Code Online (Sandbox Code Playgroud)

intellij-plugin kotlin

3
推荐指数
1
解决办法
967
查看次数

IntelliJ IDEA:如何忽略方法层次结构中的“@see comments”javadoc?

package p;

public abstract class A { abstract void a(); }

class A1Impl extends A {

    /** @see A#a() */
    @Override void a() { } } // cursor on a() in A1Impl, ctrl+alt+h,show method hierarchy

class A2Impl extends A {

    /** @see A#a() */
    @Override void a() { } }

class Caller {

    void call(A1Impl a) {
        a.a();
    }
}
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

光标在 A1Impl 中的 a() 上,ctrl+alt+h,显示方法层次结构,如何设置在选择红色框中不显示其他 2 个不相关的调用者,但不远程显示代码中的 @see ..?

java intellij-idea intellij-plugin

3
推荐指数
1
解决办法
306
查看次数

如何在插件动作类中获取当前文件名

在IntelliJ IDEA插件操作类中,我想获取用户当前正在查看的Java类文件名.我怎么会这样?

在IntelliJ IDEA中,如果我们单击Analyse -> Inspect Code,它将显示一个选择范围的窗口,因为它还将显示当前文件名.与该视图类似,我想在插件动作类中获取当前文件名.我怎么能这样做?

java plugins intellij-idea intellij-plugin

2
推荐指数
1
解决办法
565
查看次数

QAPlug-CheckStyle和CheckStyle-IDEA之间的区别

找到一个关于QAPlug-FindBugs和FindBugs-IDEA之间差异的类似问题,但不是关于CheckStyle ...

我认为(根据之前的经验)这些插件的一个区别是QAPlug的CheckStyle版本似乎落后于CheckStyle-IDEA的CheckStyle版本(我不是指版本的插件,而是版本嵌入在其中的CheckStyle).

谁知道那些之间的任何其他差异?

checkstyle intellij-plugin intellij-14

2
推荐指数
1
解决办法
695
查看次数

IDEA 插件:PersistentStateComponent 不持久化 xml

我无法让我的插件保持其状态。文件 configProvider.xml 永远不会被创建,@State注释也没有任何效果(显然)。

这是 plugin.xml 中的相关部分

<extensions defaultExtensionNs="com.intellij">
    <applicationService serviceImplementation="my.plugins.idea.vcs.ConfigProvider" serviceInterface="my.plugins.idea.vcs.ConfigProvider"/>
</extensions>
Run Code Online (Sandbox Code Playgroud)

这是提供应该持久化的对象的类:

import com.intellij.openapi.components.PersistentStateComponent;
import com.intellij.openapi.components.ServiceManager;
import com.intellij.openapi.components.State;
import com.intellij.openapi.components.Storage;
import java.util.LinkedHashMap;

@State(
  name = "ConfigProvider",
  storages = {
@Storage(id = "main", file = "$APP_CONFIG$/configProvider.xml") 
  }
)
public class ConfigProvider  implements PersistentStateComponent<ConfigProvider.State> {

  private State state = new State();

  class State {
    public State() {}
    public LinkedHashMap<String, String> commitTypes = null;
    public Integer selectedDefaultCommitTypeIndex = null;
    public String jiraApiUrl;
    public String jiraAuthorization;
    public String jiraFilterId;
  } 

  public …
Run Code Online (Sandbox Code Playgroud)

java xml intellij-idea intellij-plugin

2
推荐指数
1
解决办法
1359
查看次数

如何在Go Test IntelliJ中重复运行一个或一组测试

我不时会遇到间歇性问题的烦人测试,我需要多次运行才能曝光.我正在寻找一种方便的方法来设置一个数字或来自intelliJ的"无限循环",但我没有找到.

是否有插件或我错过了一些可以允许我从UI执行此操作的内容(而不是更改代码).

编辑:因为我发现这种功能的支持是每个测试实用程序插件.例如,它已经存在于JUnit中,但Go Test没有.我的直觉表明,应该为所有测试插件提供这样的功能,但每个插件方法可能有一些技术原因.

unit-testing intellij-idea go intellij-plugin

2
推荐指数
1
解决办法
1827
查看次数

是否可以传输所有插件和设置?

我已经在 Mac 上使用 IntelliJ IDEA 太久了。我的公司要求我使用他们的笔记本电脑,但我需要我所有的插件和设置。我从未在另一台计算机上使用过 IntelliJ IDEA,所以也许它很容易,我真的不想一个一个安装所有插件,因为插件太多了。

intellij-idea intellij-plugin intellij-14

2
推荐指数
1
解决办法
1524
查看次数

IntelliJ 插件开发:如何生成新的源文件

我正在开发一个插件,它将在打开的类内部和外部生成代码。

我扩展了GenerateMembersHandlerBase类来生成类的成员 - 它工作得很好。

现在我需要生成一个完整的类(新的源文件),它将放在我正在处理的类之外。

问题:我找不到任何允许我创建新 Java 源文件的 API。请提示我 API,或提示我IntelliJ IDEA 源代码中实现此类内容的位置。

更多上下文:假设我们有com.mycompany.User课。我正在实现一个插件,它将为它生成一个具有下一个格式的构造函数:

public User(UserInfo info) {
    //...
}
Run Code Online (Sandbox Code Playgroud)

并且UserInfo类需要在飞行中生成。所以在代码生成之后,我应该在类中有一个构造函数,User并为com.mycompany.UserInfo.

java jetbrains-ide intellij-idea intellij-plugin

2
推荐指数
1
解决办法
1038
查看次数

IntelliJ 插件:仅允许从事件调度线程访问

你好堆栈溢出社区。我正在编写一个 IntelliJ 插件,它需要通过 WebSocket 侦听消息将一些文本写入打开的编辑器。

问题是,当我Access is allowed from event dispatch thread only尝试通过final Editor editor = manager.getSelectedTextEditor();.

这是完全有道理的,因为 WebSocket 的消息处理程序正在另一个线程中执行。

你知道从另一个线程写入编辑器的任何方法吗?或者其他一些解决方法?

java intellij-idea intellij-plugin

2
推荐指数
1
解决办法
1598
查看次数

Android Studio 3.5.2 - Marketplace 插件未加载

1

1 1

Windows 防火墙允许使用 Android Studio。

试着 :

  • 关闭 Windows 防火墙
  • 尝试使用不同的 ISP
  • 尝试在本地安装 Flutter 插件

这些都不起作用。请帮我。

我错过了什么?

android intellij-plugin android-studio flutter-plugin android-studio-3.5.1

2
推荐指数
1
解决办法
1880
查看次数