我正在为Intellij Idea制作一个插件,我在项目创建阶段遇到了一个问题。
当我在项目创建向导中点击我的插件“附加库和框架:”时,会出现一个中心有“无显示”的大正方形。我必须点击“下一步”按钮,以便我的设置显示出来。我不明白这是什么原因造成的。如果你需要的话,可以在我的plugin.xml下面。
<!-- Copyright 2000-2023 JetBrains s.r.o. and other contributors. Use of this source code is governed by the Apache 2.0 license that can be found in the LICENSE file. -->
<!-- Plugin Configuration File. Read more: https://plugins.jetbrains.com/docs/intellij/plugin-configuration-file.html -->
<idea-plugin>
<!-- Unique id for this plugin. Must stay constant for the life of the plugin. -->
<id>org.intellij.sdk.project.wizard</id>
<!-- Text to display as name on Settings | Plugin page -->
<name>SDK: Project Wizard Demo</name>
<!-- Product and plugin compatibility requirements -->
<depends>com.intellij.modules.platform</depends>
<!-- Text to display as description on Settings | Plugin page -->
<description>
<![CDATA[
Demonstrates working with the Project Wizard.
]]>
</description>
<change-notes>
<![CDATA[
<ul>
<li><b>2.0.0</b> Convert to Gradle-based plugin</li>
<li><b>1.0.0</b> Release 2018.3 and earlier.</li>
</ul>
]]>
</change-notes>
<!-- Text to display as company information on Settings | Plugin page -->
<vendor url="https://plugins.jetbrains.com">IntelliJ Platform SDK</vendor>
<extensions defaultExtensionNs="com.intellij">
<moduleType
id="DEMO_MODULE_TYPE"
implementationClass="org.intellij.sdk.project.wizard.DemoModuleType"/>
</extensions>
</idea-plugin>
更新:
我设法使“附加库和框架:“部分被替换我的插件的向导步骤。但是现在,当我按下“下一步”时,一个副本出现了。
更新2:以下是我的代码的Pastebin链接:
DemoModuleWizardStep.java: https://pastebin.com/tHSw0bbS
DemoModuleType.java: https://pastebin.com/QBh5LkDg
DemoModuleBuilder.java: https://pastebin.com/BBhCMPNd
另外,我正在编辑IntelliJ IDEA的代码,可以在这里找到:https://github.com/JetBrains/intellij-sdk-code-samples/tree/main/project_wizard
1条答案
按热度按时间myzjeezk1#
根据您提供的信息和pastebin链接,让我们尝试诊断问题。
1.“Nothing to Show”问题:当您的自定义
ModuleWizardStep
未正确初始化或未在ModuleBuilder
中正确返回时,通常会出现“Nothing to Show”问题。1.向导步骤重复:当您在单击“Next”后说“a duplicate showed up”时,通常意味着您的
ModuleBuilder
返回了自定义ModuleWizardStep
的多个示例。让我们来解决这些问题:
1.解决“无显示”问题:
确保
DemoModuleBuilder
的getModuleType()
方法返回正确的ModuleType
。从getModuleType()
返回的示例应该与在plugin.xml
中注册的示例匹配。在
DemoModuleBuilder.java
中:在
DemoModuleType.java
中,确保DemoModuleType
singleton已正确初始化:2.解决重复向导步骤问题:
确保在
DemoModuleBuilder
的getCustomOptionsStep()
中只返回ModuleWizardStep
的一个示例。还应该检查任何其他可以返回ModuleWizardStep
的方法,以确保它们不会无意中添加额外的步骤。在
DemoModuleBuilder.java
中:确保如果覆盖了其他方法(如
createWizardSteps()
),它们不会无意中添加额外的步骤。