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

标签 java android aop guice roboguice

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

但我的问题是:为什么 Guice 不能在没有这些特殊库的情况下在 Android 应用程序上运行?我期待在 Guice 的网站/wiki 上找到一些东西,但令我惊讶的是,找不到一个单一的原因。

有人知道吗?

编辑
这个问题的附属是一个更广泛的问题:

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

最佳答案

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

Not supported These packages, normally a part of the Java 2 Platform Standard Edition, are not supported by Android.

  • java.applet
  • java.awt
  • java.beans
  • java.lang.management
  • java.rmi
  • javax.accessibility
  • javax.activity
  • javax.imageio
  • javax.management
  • javax.naming
  • javax.print
  • javax.rmi
  • javax.security.auth.kerberos
  • javax.security.auth.spi
  • javax.security.sasl
  • javax.swing
  • javax.transaction javax.xml (except javax.xml.parsers)
  • org.ietf.*
  • org.omg.*
  • org.w3c.dom.* (sub-packages)

另外,正如已经指出的那样,在运行时依赖于字节码编织的 AOP 将无法工作(并非所有人都可以,例如 Spring AOP)。

关于java - 除了 Guice-no-aop,是什么让 Guice 无法在 Android 上运行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9488938/

相关文章:

Android 多播套接字停止监听

java - Spring AOP切点错误

c# - 向多个目标类中的方法调用注入(inject)外部参数

java - 如何验证wrapper.conf中的Java参数

java - Android JAVA从php获取数组

java - 未使用该字段的值

android - 如何使用 Android 自动填充 API

android - 如何使用 sendevent 或其他方式模拟来自后台服务的触摸?

java - 方面按方法注释未执行

java - JTextField 中的 Ctrl-Delete