【问题标题】:Speeding Up Grails Dependency Resolution加速 Grails 依赖解析
【发布时间】:2013-01-11 04:19:33
【问题描述】:

我们目前正在开发一个具有相对大量外部依赖项的应用,因为我们正在与一个相当复杂的现有系统集成。

依赖关系工作得很好,但是,无论依赖关系是否已经在 Ivy 缓存中,解决依赖关系仍然需要几分钟。如果缓存需要更新,当然需要更长的时间。

有什么方法可以加快这个过程,或者在每次运行时禁用依赖解析?这现在正在成为巨大的生产力消耗。

谢谢!

【问题讨论】:

    标签: grails dependencies


    【解决方案1】:

    也许这有点棘手,但我会做以下事情

    1. 使用 config dsl 的 enviroment 元素仅在测试和生产中添加依赖解析参见 [此处][1]
    2. 将所有依赖 jar 放入 grails 应用程序的 lib forlder 我会使用 mavendependecy:copy 来完成。我认为它也可以在常春藤中完成
    3. 将 jar 文件添加到您的 scm-ignore-list
    4. 使用 CI 构建系统检查依赖解决方案是否正确

      [1]:http://www.grails.org/doc/1.3.x/guide/3.%20Configuration.html#3.2 环境

    【讨论】:

      【解决方案2】:

      尝试使用 --offline 开关。这将避免远程存储库并仅搜索文件系统(即本地 maven 存储库)。只需要在添加新依赖时重新上线即可。

      【讨论】:

      • Grails > 仅 2 个
      【解决方案3】:

      我认为没有什么好方法可以解决依赖解析所花费的时间;据我了解,Grails 中的一个特定设计决策是在启动时进行依赖关系解析,这样应用程序就不必在运行时引入依赖关系。

      您至少可以通过让 Grails 应用程序运行并热部署任何更改来在开发模式下解决此问题 - 如果您使用的是具有嵌入式 Tomcat 服务器的最新 Grails 版本之一,那么这非常有效。

      【讨论】:

      • Grails 充满了你知道的东西(是的,我很生气)。执行任何命令都非常慢!热部署不适用于任何域对象更改或服务更改(尽管它适用于控制器)。不知道为什么!我刚刚开始了一个使用 grails 的项目,虽然我喜欢 groovy + grails 提供的很多功能,但速度太慢了!等效的 maven/jetty/hibernate/spring/hsql/plain java setup 在不到 10 秒内启动!使用注释编写代码同样容易,IMO!
      猜你喜欢
      • 2011-06-27
      • 2011-07-07
      • 1970-01-01
      • 1970-01-01
      • 2022-12-18
      • 1970-01-01
      • 2011-12-03
      • 1970-01-01
      • 2012-03-03
      相关资源
      最近更新 更多