通用技术 [已解决] 在 maven 项目的 pom 文件中如何配置内存泄漏检测工具 leakcanary

hover · 2015年11月13日 · 最后由 momo 回复于 2015年12月19日 · 1282 次阅读

大家好,我的 android 工程是通过 maven 导入各种第三方的 jar 包的,我在 pom 文件中配置 leakcanary 后然后进行 maven 的刷新提示无法找到 LeakCanary;
我在 pom 文件中的配置如下:

<dependency>
    <groupId>com.squareup.leakcanary</groupId>
    <artifactId>leakcanary-android</artifactId>
    <version>1.3</version>
</dependency>
<dependency>
    <groupId>com.squareup.leakcanary</groupId>
    <artifactId>leakcanary-android-no-op</artifactId>
    <version>1.3</version>
</dependency>

ExampleApplication 代码如下:

package demo.leakcanary.srain.in.leakcanarydemo;

import android.app.Application;
import com.squareup.leakcanary.LeakCanary;
import com.squareup.leakcanary.RefWatcher;

public class ExampleApplication extends Application {

    private RefWatcher mRefWatcher;

    @Override
    public void onCreate() {
        super.onCreate();
        mRefWatcher = LeakCanary.install(this);
    }
}

错误提示:
在配置完 pom 文件并刷新 maven 后,一直提示无法找到导入的文件 import com.squareup.leakcanary.LeakCanary!

问题解决如下,只要在 pom 文件总增加aar就可以了:

 <dependency>
    <groupId>com.squareup.leakcanary</groupId>
    <artifactId>leakcanary-android</artifactId>
    <version>1.3</version>
    <type>aar</type>
</dependency>
共收到 6 条回复 时间 点赞

@monkey,帖子已经修改,请看看还有什么问题,多谢!

@seveniruby 帖子修改了几次,不知道是否合乎规矩,请给看看


麻烦看下排版说明。不合格。

#3 楼 @lihuazhang 排版说明确实看了,不过没有看的很明白,这次应该是对了,多谢提醒!

#4 楼 @jiguanghover 麻烦更新一下标题,在上面加上【已解决】方便后面的人参考吧。

请问加的 aar,对于其他类似的这种错误,也是一样的方式?加 aar 就解决了,原理是什么?

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册