gpt4 book ai didi

java - Android 5 的 jax-rs Jersey 服务器?

转载 作者:行者123 更新时间:2023-12-02 04:50:33 25 4
gpt4 key购买 nike

我们正在将用 jersey 2 编写的 Web 服务的服务器部分移植到 android。

我们尝试将其部署在嵌入式 jetty 中。不幸的是,我们缺少 java 核心依赖项

  • sun.misc.Unsafe
  • java.awt.image
  • javax.imageio
  • java.lang.management
  • javax.naming

这是否意味着我们将无法在 Android 上使用它?有一个post explaining how the client part could work通过 HK2 公共(public) API 配置框架。但我认为这不能满足我们想要的目的。

如果我们想在 android 上构建 Rest api 的服务器部分,还有哪些其他选项?我们已经考虑过 nanohttp,但这看起来水平太低,我们希望继续使用 jax-rs。

感谢您的帮助。

最佳答案

在 Jersey 中,会检查给定平台上是否支持不安全的方法。因此,可以删除使用 sun.misc.Unsafe 的组件,只需对代码进行少量修改即可使用后备解决方案。

java.lang.management 和 javax.management 用于监视和诊断。它处于测试阶段,默认情况下处于禁用状态。因此,有问题的“带有统计信息的 JMX MBeans”组件可以简单地删除。

RenderedImageProvider.java中使用了java.awt.image和javax.imageio我不知道它到底有什么作用,但在 Jersey 1.x 上它存在但未使用。所以也许它也可以被删除。如果需要,必须使用原生 Android 组件重新实现。

Jersey 所需的一些外部库还有一个问题:它们来自标准 java.* 或 javax.* 命名空间,Android 认为它们依赖于其他“核心”库,而这些库在 Android 上不可用不支持完整的JDK。它们必须重新打包(使用 Jarjar)或者必须在编译期间指定“--core-library”选项以消除核心库检查。

我不了解 Grizzly,但 Jetty 在 Android 上运行良好。

最诚挚的问候,库库克

关于java - Android 5 的 jax-rs Jersey 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29274588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com