【问题标题】:Importing/using Java classes in Grails在 Grails 中导入/使用 Java 类
【发布时间】:2015-03-22 04:26:42
【问题描述】:

我有一个使用 Jersey 创建的现有 RESTful 服务,为此我创建了 2 个客户端(也是 Java),一个使用 Jersey 客户端 API,一个使用 Apache HTTP 客户端。

我没有太多前端经验 - 我使用过一点 Spring/Java 并且了解基本概念,但我想我会尝试学习 Grails。我只想将 Grails 用于前端(因此,不依赖 GORM),并将我现有的服务用于业务逻辑/与存储的交互)。我是否可以只包含带有我现有客户端的 jar 并在我的 Grails 控制器中使用它,或者我是否需要使用 Groovy(或已经包含的 Java 库)为其编写一个新的 Groovy 客户端?

如果这看起来是个好主意,或者如果我没有利用 GORM/Grails 数据持久性功能,使用 Grails 似乎毫无意义,我也很乐意听取意见?我认为我仍然可以获得“约定优于配置”的优势,也许还有该框架的其他一些优势,但我对 Web 开发还是很陌生,所以我会很感激任何建议。

【问题讨论】:

  • 刚刚找到grails.org/plugin/jaxrs,这可能是一个可能的解决方案。如果我可以导入我现有的 java 客户端,或者仍然需要使用它编写一个新的 groovy 客户端,我还不确定我是否包含该库。

标签: java grails


【解决方案1】:

您可以在 grails 中使用现有的 java 客户端。如果您现有的客户端 jar 在 maven 存储库中,那么您可以在 BuildConfig.groory 中为 jar 指定依赖项。否则你可以把 jar 放到你的 grails 项目 lib 目录中。

此外,如果您的客户端代码依赖于任何第三方 jar,则您必须在 BuildConfig.groovy 中为该第三方 jar 指定依赖项 - 请参阅 grails 文档了解如何指定依赖项。

如果你愿意,你也可以使用 grails rest-client-builder 插件来编写你的客户端。

【讨论】:

  • 谢谢苏迪尔。我最终确实遇到了rest-client-builder,并决定我不妨尝试使用它来编写一个groovy客户端,只是为了学习。到目前为止,这已经奏效了。也感谢您的其他解决方案-使用我知道的直接 jar 复制方法可能会导致尝试获取所有下游依赖项并处理潜在的依赖项冲突等痛苦……我的客户端不在 maven 存储库中,它在 bitbucket 中现在,但我认为有一些方法可以将 bitbucket 和其他 git 存储库作为远程 maven 存储库从初始读取开始
猜你喜欢
  • 2010-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-01-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多