是什么让Guice无法在Android上运行,除了Guice-no-aop?

IAm*_*aja 8 java aop android guice roboguice

我在Guice的下载页面上看到了一个名为guice-no-aop的模块,其目的显然是向Android开发人员推销.一些在线搜索撤回了像RoboGuice这样的库,它们看起来像是类似的基于AOP的IoC,有几篇文章甚至提供了很好的代码示例.

但我的问题是:如果没有这些特殊的库,Guice为什么不在Android应用上运行?我期待在Guice的网站/维基上找到一些东西,但令我惊讶的是,找不到一个原因.

有人知道吗?

编辑
这个问题的辅助是一个更广泛的问题:

  • 还有哪些其他Java框架无法在Androids上运行?!?!(经验法则是什么?)

Emi*_*l H 3

此页面列出了一些不受支持的标准包。任何依赖于这些软件包的东西都可能无法工作......

不支持这些包通常是 Java 2 Platform Standard Edition 的一部分,但不受 Android 支持。

  • java.applet
  • java.awt
  • java.beans
  • java.lang.管理
  • java.rmi
  • javax.accessibility
  • javax.activity
  • javax.imageio
  • javax.管理
  • javax.命名
  • javax.print
  • javax.rmi
  • javax.security.auth.kerberos
  • javax.security.auth.spi
  • javax.security.sasl
  • javax.swing
  • javax.transaction javax.xml(javax.xml.parsers 除外)
  • org.ietf.*
  • org.omg.*
  • org.w3c.dom.*(子包)

另外,正如已经指出的那样,在运行时依赖于字节码编织的 AOP 将不起作用(并非全部都起作用,例如Spring AOP)。