如何在没有AOP的情况下为Guice 3.0配置Maven依赖项?

如何在没有AOP的情况下为Guice 3.0配置Maven依赖项?,maven,guice,java,android,maven-3,Maven,Guice,Java,Android,Maven 3,我有一个Android Maven项目,并希望在其中使用 Guice有一个与Android兼容的“无AOP”版本 如何判断使用的“无AOP”版本 更新1(03.05.2013 10:46 MSK): 当我在GoogleGuice上添加依赖项时,在构建过程中会出现以下异常(mvn clean install): 以下是我的依赖项: com.google.android 安卓 4.1.1.4 假如 朱尼特 朱尼特 4.8.2 编译 com.google.inject 圭斯 3 没有 com.piv

我有一个Android Maven项目,并希望在其中使用

Guice有一个与Android兼容的“无AOP”版本

如何判断使用的“无AOP”版本

更新1(03.05.2013 10:46 MSK):

当我在GoogleGuice上添加依赖项时,在构建过程中会出现以下异常(
mvn clean install
):

以下是我的依赖项:


com.google.android
安卓
4.1.1.4
假如
朱尼特
朱尼特
4.8.2
编译
com.google.inject
圭斯
3
没有
com.pivotallabs
生物分子
1.0-RC4
org.achartengine
阿卡捷宁
1.1.0
org.easytesting
fest断言核心
2.0M8
利他主义
中共公地
1.0.2
利他主义
平民
1.11
com.fasterxml.jackson.core
杰克逊核心
2.1.4
com.fasterxml.jackson.core
杰克逊数据绑定
2.1.4

您需要将
no\u aop
指定为如下分类器:

<dependency>
   <groupId>com.google.inject</groupId>
   <artifactId>guice</artifactId>
   <version>3.0</version>
   <classifier>no_aop</classifier>
</dependency>

com.google.inject
圭斯
3
没有

如果您还想摆脱aopalliance依赖,请使用以下方法:

<dependency>
    <groupId>com.google.inject</groupId>
    <artifactId>guice</artifactId>
    <version>3.0</version>
    <classifier>no_aop</classifier>
    <exclusions>
        <exclusion>
            <artifactId>aopalliance</artifactId>
            <groupId>aopalliance</groupId>
        </exclusion>
    </exclusions>
</dependency>

com.google.inject
圭斯
3
没有
奥帕林
奥帕林

Google由于反射性能,不鼓励在Android上使用Guice。您可以使用的最后一个无aop版本是:

compile 'com.google.inject:guice:2.0-no_aop'

'com.google.inject:guice:3.0-no_aop'
已不在maven存储库中,以及
'com.google.inject:guice:4.1.0-no_aop'


'com.google.inject:guice:4.1.0
在Android上崩溃,原因是:
com.google.common.util.concurrent.ExecutionError:java.lang.ExceptionInInitializeError


与NoClassDefFoundError:org.aopalliance.intercept.MethodInterceptor发生崩溃可能有助于解决新错误?可能是其他原因导致了非无aop Guice依赖关系。使用
mvn依赖关系:树
查找。
compile 'com.google.inject:guice:2.0-no_aop'
compile ('com.google.inject:guice:4.1.0') {
   exclude group: 'aopalliance', module: 'aopalliance'
}