簡體   English   中英

用於Android 5的jax-rs球衣服務器?

[英]jax-rs jersey server for android 5?

我們正在將用jersey 2編寫的Web服務的服務器部分移植到android。

我們嘗試將其部署在嵌入式碼頭中。 不幸的是,我們缺少Java核心依賴項

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

這是否意味着我們將無法在android上使用它? 有一篇文章解釋了客戶端如何通過HK2公共API配置框架。 但是我認為這不能用於我們想要的東西。

如果我們想在android上構建rest api的服務器部分,還有哪些其他選擇? 我們已經考慮過nanohttp了,但是這個級別太低了,我們想繼續使用jax-rs。

謝謝你的幫助。

在Jersey中,將檢查給定平台上是否支持不安全的方法。 因此,可以刪除使用sun.misc.Unsafe的組件,只需對代碼進行少量修改即可使用后備解決方案。

java.lang.management和javax.management用於監視和診斷。 它處於測試階段,默認情況下處於禁用狀態。 因此,可以輕松刪除有問題的“帶有統計信息的JMX MBean”組件。

我不完全知道RenderedImageProvider.java中使用了java.awt.image和javax.imageio,但是在Jersey 1.x上卻存在但未使用它。 因此可能也可以將其刪除。 如果需要,則必須使用本機Android組件重新實現。

澤西島需要的某些外部庫還有另一個問題:它們來自標准的java。*或javax。*名稱空間,而Android認為它們依賴於其他“核心”庫,而Android上沒有這些庫支持完整的JDK。 必須重新打包它們(使用Jarjar),或者在編譯過程中必須指定“ --core-library”選項以消除核心庫檢查。

我不知道Grizzly,但Jetty在Android上運作良好。

最好的問候,kukukk

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM