【问题标题】:Netbeans/Maven development: how to make it faster?Netbeans/Maven 开发:如何让它更快?
【发布时间】:2014-11-26 01:57:44
【问题描述】:

我正在使用 Maven 进行繁重的工作。但是,在处理小部件(如单元测试)时,Netbeans 中“mvn test”的反应时间太慢了。我已经编写了一个 ClassReloader 来设置目录监视并使用 Netbeans 的 compile-on-save。但是,这有点笨拙,因为它需要我修改测试单元类并添加一个 main 方法。

有更好的方法吗?我已经考虑过设置相同模块的并行视图,它使用 ant 构建脚本。你们有更好的主意吗?还是可以让这一切变得更容易的工具?

例如,maven-dependency-plugin 能够复制依赖项并将类路径写入文件。这是一个开始。但是如何将类路径导入到 ant 构建文件中,或者更好的是,导入到 netbeans 项目配置中?那么在 maven-surefire-plugin 的配置部分设置的系统 props 呢?

有 maven-ant-plugin,但是它几乎没有配置选项,并且如果不修改输出文件就无法工作。

有更好的工具吗?也许是一个将 maven 项目转换为 netbeans 项目配置的 netbeans 项目生成器?

然后还有另一个问题:你不能在 netbeans 中使用同一个源文件夹两次,即使另一个实例位于当前未打开的项目组中......

解决方案不需要完美:就像我说的,它只需要小部分。

也许我开始使用 Eclipse 来做一些简单而小的事情。

我不会开始讨论什么更好,Netbeans eclipse 等。我使用 Netbeans 是因为它是唯一支持原生 Maven 的 IDE。 Eclipse 的 maven 支持很垃圾,我已经浪费了太多时间了。

【问题讨论】:

  • 请使用 Eclipse 或 Intellij。不要使用 Netbeans。对于任何事情。
  • 如果您使用 Eclipse WTP 可分发包,则包括 maven 支持,并且没有您列出的 NetBeans 的任何限制。
  • 你在使用 maven 进行繁重的工作是什么意思?从命令行运行mvn test 是否有明显差异?为什么测试的性能很重要,它会影响测试的功能吗?

标签: java maven netbeans junit


【解决方案1】:

通常,虽然 mvn test(运行所有测试)与在命令行上运行一样慢,但在打开保存时编译运行单个测试应该会明显更快。您只需通过 mvn 有效地执行 surefire:surefire,因为这些类是为您即时编译的。它仍然需要几秒钟,因为创建了新的 JVM,加载了 maven 项目并执行了肯定会再次生成另一个 jvm 的目标,您的里程可能会有所不同。

您可以在编辑器中同时拥有测试或测试类时触发运行测试操作。

【讨论】:

    猜你喜欢
    • 2013-06-05
    • 2011-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-23
    • 1970-01-01
    相关资源
    最近更新 更多