2010-09-28 63 views

回答

0

这是一个有趣的问题......因为我相信你必须编写一个自定义的NetBeans插件来完成你想要的功能(这个功能并不是开箱即可使用的)我一直在寻找一个探索NetBeans插件开发的借口。

然而,花了几个小时阅读教程并通过javadocs爬行之后......很明显,这个主题是一个相当大的咀嚼咀嚼,可能比你想要的方式更多的参与。


我认为最好的建议是忘记在删除未使用的进口节省时间,而是在构建时执行此步骤。 NetBeans提供与Ant和/或Maven的良好集成(出于构建目的,它基本上只是一个围绕这些工具的GUI包装),并且有许多Ant任务可以完成您想要的任务。请参阅:

http://ant.apache.org/external.html
(寻找“CleanImports”和“Importscrubber”任务)

如果你的NetBeans项目(S)是基于Maven的,那么你可以随时在这些Ant任务,有一个插件使用AntRun plugin for Maven

如果您不习惯在NetBeans中处理Ant或Maven 直接,那么只需切换到“文件”选项卡并查看项目的根目录。如果它是一个Maven项目,构建脚本将被命名为pom.xml。否则,您的项目通常是基于Ant的,构建脚本将被命名为build.xml。上述这些项目的文件应该很清楚如何从那里前进。


我注意到,这两个Ant任务还没有在一段时间更新,因此如果你遇到问题,你可能要检查出非常流行,跟上时代的PMD system,它有自己的documentation for integrating with NetBeans 。但是,PMD的问题主要是生成报告......我不知道它是否可以用于实际采取行动和更改源文件。

0

这是不是一个好的做法和NetBeans不支持它。

+2

可以扩展此(为什么它不是很好的样式)或提供一些参考(有关NetBeans不支持此特性)?现在,你的答案看起来更像是一个评论。 – jadarnel27 2012-08-08 14:56:13

0

我恢复了这个主题。

那么这个代码是用Netbeans 7.4测试的。 这里我重写了actionPerformed方法中的默认保存操作。 如果您选择通过自己创建一个新的Action,然后调用actionPerformed方法中的save操作。

package yourpackage; 

import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 
import javax.swing.JOptionPane; 
import org.openide.awt.ActionID; 
import org.openide.awt.ActionReference; 
import org.openide.awt.ActionReferences; 
import org.openide.awt.ActionRegistration; 
import org.openide.util.NbBundle.Messages; 

@ActionID(
     category = "File", 
     id = "BZ.SaveAction" 
) 
@ActionRegistration(
     iconBase = "BZ/Save.png", 
     displayName = "#CTL_SaveAction" 
) 
@ActionReferences({ 
    @ActionReference(path = "Menu/File", position = 750), 
    @ActionReference(path = "Toolbars/File", position = 0), 
    @ActionReference(path = "Shortcuts", name = "D-S") 
}) 
@Messages("CTL_SaveAction=Save") 
public final class SaveAction implements ActionListener { 

    org.openide.actions.SaveAction sa = org.openide.util.actions.CallbackSystemAction.get(org.openide.actions.SaveAction.class); 
    @Override 
    public void actionPerformed(ActionEvent e) { 
     // custom code 
     JOptionPane.showMessageDialog(null, "custum message "); 
     sa.performAction(); 
    } 
} 
0

转到Tools-> Options选择Editor有选择On Save Tab现在从下拉菜单中选择Java。所以,现在选择Organize Imports选项。希望这会帮助你。