今天需要使用IDE进行开发,但是可以通过附加功能来增强所有值得他使用的IDE 。 NetBeans,IntelliJ IDEA和Eclipse都具有这种机制。 在本文中,我将提到没有Eclipse就无法开发的插件,并且每个人都支持它。
m2日食
自大约2年以来,Maven是我选择的构建工具。 与Ant相比,它增加了一些非常好的功能,主要是依赖项管理,继承和变量过滤。 一旦达到相当数量的行,配置POM就会很困难。 Sonatype m2eclipse插件 (以前由Codehaus托管)为您提供POM各个方面的基于选项卡的视图:
- “概述”选项卡整齐地分为:工件,父项,属性,模块,项目,组织,SCM,问题管理和持续集成,
- 依赖项选项卡,用于管理(猜测)依赖项和依赖项管理。 对于每个前者,您甚至可以排除相关的工件。 此标签通常是在项目开始时初始化的,因为其信息在生命周期中不应更改,
- “存储库”选项卡,用于处理存储库,插件存储库,发行版,站点和重定位(这是一种经常使用不足的功能,使您可以在不破坏内部版本的情况下更改工件位置,也称为间接级别),
- 用于自定义Maven默认文件夹的Build选项卡(通常是一个非常糟糕的主意),
- 插件选项卡,用于配置和/或执行Maven插件。 这是最重要的选项卡之一,因为在这里您将配置
maven-compiler-plugin
以使用Java 6,或者类似的选项, - “报告”标签可管理
<report>
部分, - “个人资料”标签可处理个人资料,
- “团队”标签可填写面向团队的数据,例如开发人员和贡献者信息,
- 根据我的观点,最有用和最重要的选项卡以图形方式显示了依赖关系树。 更好的是,每个合并范围以不同的方式表示,您可以过滤掉不需要的合并范围。
- 最后但并非最不重要的一点是,最后一个选项卡使您可以直接编辑基础XML。
此外,m2eclipse添加了一个新的Maven构建运行配置,该配置与命令行等效:
这样,您可以轻松配置-X
选项(“调试输出”)或-Dmaven.test.skip
选项(“跳过测试”)。
更重要的是,您可以设置插件以在Eclipse构建期间解决工作空间中的依赖关系。 也就是说,Eclipse将使用项目的类路径(前提是它处于所需的版本中),而不是使用存储库的类路径。 这样可以避免在每次修改工件时都需要构建工件,因为更改后另一个工件将无法编译。 它仅复制了旧版Eclipse依赖项管理。
我建议不要在先前的“运行”配置中使用“解析工作区”工件,因为它将使用此默认行为。 在Maven构建中,我只想使用工具的功能与IDE保持距离。
TestNG插件
艾玛
在进行开发时,如果有人使用测试,则应该了解自己对代码的测试范围。 我曾经使用Cobertura Maven插件 :我在POM中进行了配置,每隔一段时间,我运行一个简单的mvn cobertura:cobertura
。 不幸的是,这样做不是很方便。 我搜索了具有相同功能的Eclipse插件; las,没有。 但是,我发现EclEmma Eclipse插件具有相同的功能。 它在后台使用了Emma (一种开放源代码覆盖工具),尽管我进行了彻底搜索,但Emma没有Maven 2插件。 由于我在开发过程中的IDE代码覆盖率和夜间构建过程中的Maven代码覆盖率(在Continuous Integration基础设施上)的重视程度相同,因此您基本上会陷入2种不同的产品中。 所以?
ElcEmma提供了第四个运行按钮(除了“运行”,“调试”和“外部工具”之外),可以在增强模式下启动所需的运行配置(JUnit,TestNG或您拥有的工具),后者提供代码覆盖功能。 在上面的屏幕截图中,您可以看到第20行在测试期间未运行。
更好的是,该插件为代码覆盖率百分比提供了聚合视图。 该视图可以在项目,源路径,包和类级别上分解。
Spring IDE
不需要引入Spring。 JEE 5依赖项注入注释是否会淘汰还有待观察。 许多项目仍在使用Spring,这是事实。 尽管如此,在许多情况下,XML配置在Spring中还是很麻烦的:
- 引用合格的类名。 键入它既不容易也不生产。 属性也是如此
- 了解复杂或大型配置文件
- 在一百行或更多行的文件中引用Spring bean
- 在不破坏配置文件的情况下重构类名或属性名
- 被告知类是否为项目中的Spring bean,如果是,则在何处使用它
幸运的是,Spring IDE提供的功能使这些任务变得轻而易举:
- 自动完成XML配置文件
- 此类文件的图形视图
- 内部索引,以便将重构考虑到XML文件中(尽管我怀疑某些地方隐藏了一些错误,因为我经常会出错)
- 增强的Project Explorer视图,以显示使用bean的位置
与在普通的旧XML编辑器中相比,在Spring中使用XML配置时,整个程序包保证了更高的生产率。 当然,您仍然可以使用Annotation配置,尽管我不愿意这样做(在后面的文章中有更多介绍)。
我的结论是,这4个集成插件意味着使用它们的底层工具确实让我感到更加自在。 如果我选择的环境无法升级Eclipse,那么我绝对会考虑完全使用这些工具(Maven除外),或者对Spring使用Annotations配置。 您可以拥有出色的产品或框架,它们必须无缝集成到您的IDE中才能真正增加价值:考虑EJB v2的命运!
翻译自: https://blog.frankel.ch/top-eclipse-plugins-i-wouldnt-go-without/