Netbeans中的JavaFX Ant构建脚本:如何提高构建速度?

时间:2013-10-02 13:04:56

标签: java netbeans ant javafx

从网络驱动器上的目录构建JavaFX项目的速度非常慢。我相信大部分延迟是由构建脚本删除并重新创建整个/ lib目录引起的。这包括超过20 MB的jar文件,对我的项目保持不变。

如何修改ANT构建任务,以便每次构建项目时都不会重新创建此lib文件夹?还有什么办法可以减少构建时间?

我的网络构建时间较慢的另一个原因是项目总是从/ dist文件夹运行。对于标准Java SE项目,项目可以从构建目录运行,无需在每次项目运行时在/ dist中创建新的jar文件。

有没有办法从构建目录中的.class文件运行项目而不需要从/ dist运行?

以下是netbeans生成的构建文件:

2 个答案:

答案 0 :(得分:5)

查看更多的构建文件会很有帮助,可能会更改运行目标的目标依赖关系图。换句话说,制作一个不会删除的目标 lib/

更大更酷的解决方案是使用ivy将这些库一次下载到~/.ivy,在那里它们将被缓存,每次签出时都不需要提取。这将允许您从源代码控制中删除这些二进制文件。

阻止您在本地建立的原因是什么?

答案 1 :(得分:2)

以下建议仅针对您的开发工作建议,具体取决于您对环境中构建速度较慢的描述。通常,如果NetBeans JavaFX项目开发版本已经足够快,则不应使用上面的设置。对于包装生产应用程序,您需要使用不同的设置。

如何在NetBeans下快速构建JavaFX

  1. 投资固态硬盘。
  2. 按照thekbb的建议,将库文件放在机器本地。
  3. 使用NetBeans 7.4 + Java 8并创建标准Java项目而不是JavaFX项目。
  4. 在项目属性下|图书馆取消选中:
    • 在Classpath上构建项目
  5. 在项目属性下|建立|包装取消选中:
    • 压缩JAR文件
    • 编译后构建JAR
    • 复制从属库
  6. 在项目属性下|建立|部署取消选中:
    • 在项目菜单中启用本机包装选项
    • 默认情况下,如果不存在,则将JavaFX RT工件保留在编译类路径上。
  7. 在项目属性下|应用| Web Start取消选中:
    • 启用Web Start
  8. 如果您最终无法使用NetBeans解决构建性能问题,您可能需要尝试Intellij Idea(我发现它在构建JavaFX项目时非常有效)。

    我使用NetBeans构建体验

    标准NetBeans JavaFX项目可以非常快速地为我构建和运行JavaFX项目(不超过一两秒)。即使没有应用上面的大多数构建速度建议也是如此。在几秒钟内构建的项目可引用超过75个库,总计超过55MB的数据。但是,构建时间是在使用本地库时,而不是在使用存储在网络上的库时。快速构建也使用Macbook Air(具有SSD)。

    如果项目已签名,则每个库jar的签名过程需要几秒钟。