java.lang.ClassNotFoundException:未找到具有newrelic

时间:2015-10-19 10:30:31

标签: android newrelic zendesk

我正在创建一种具有多个依赖项的复杂应用程序,我使用newrelic一段时间没有任何问题,之后我想将ZenDesk添加到应用程序,但是在初始化SDK时,我收到了一个新的遗物错误太奇怪了!我试图为了测试从应用程序中完全删除newrelic,所以我从gradle文件中删除了编译'com.newrelic.agent.android:android-agent:5.3.1'

该应用程序现在根本不起作用!它在开始显示标题中的错误时崩溃: 的 java.lang.ClassNotFoundException: Didn't find class *.*.MainActivity

当我添加newrelic时,应用程序再次开始工作!

我试图对这个问题进行一些挖掘,但是我发现很少有关于停止gradle和清理项目的建议,所以说这个问题可能是一笔小额现金,我尝试了一切,我甚至在另一台机器上尝试过,问题持续存在!

任何想法有什么不对?

修改

清单

    <?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.myapp" >

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme"
        android:supportsRtl="true">
        <activity
            android:name="com.myapp.Main.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name="com.facebook.FacebookActivity"
            android:configChanges="keyboard|keyboardHidden|screenLayout|screenSize|orientation"
            android:label="@string/app_name"
            android:theme="@android:style/Theme.Translucent.NoTitleBar" />
    </application>

</manifest>

2 个答案:

答案 0 :(得分:2)

与往常一样,在编写XD时,解决方案是99%的愚蠢

位于 gradle 文件的顶部,有以下内容: 的 apply plugin: 'newrelic'

我刚删除了这一行,现在就可以了。

答案 1 :(得分:1)

android:name="com.myapp.Main.MainActivity"

我猜错了

它会

android:name="com.orderme.MainActivity"
  

Java虚拟机时抛出ClassNotFoundException   (JVM)尝试加载特定的类,而指定的类不能   在类路径中找到。 ClassNotFoundException已被选中   因此,必须在方法或构造函数中声明   抛出条款。

方式是什么

  1. 验证所请求的类的名称是否正确以及该名称 适当的.jar文件存在于类路径中。如果没有,你必须 将它显式添加到应用程序的类路径中。
  2. 如果您的类路径中存在指定的.jar文件,那么,您的 应用程序的类路径正在被覆盖,你必须找到 您的应用程序使用的确切类路径。
  3. 如果异常是由第三方类引起的,则必须 识别抛出异常的类,然后添加 缺少类路径中的 .jar文件
  4.   

    Eclipse - java.lang.ClassNotFoundException