如何解析java.lang.RuntimeException:存根!.java文件中有错误吗?

如何解析java.lang.RuntimeException:存根!.java文件中有错误吗?,java,compiler-errors,weka,assets,stub,Java,Compiler Errors,Weka,Assets,Stub,我试图使用我在Weka GUI上创建的.model文件对实例进行分类。似乎我已经成功地对测试实例进行了分类,但是,我不确定是否能够成功加载.model文件和存根编译器错误 我已尝试删除扩展AppCompatActivity,如果这对.model上载有任何影响。事实证明,要使用getAssets(),代码必须在活动中。但是,我仍然不确定模型是否有上载和异常的编译器错误。我遵循了@davidmascharka的基本框架(他还从资产中加载了一个WEKA模型),但我的框架没有编译 这是我的密码: pac

我试图使用我在Weka GUI上创建的.model文件对实例进行分类。似乎我已经成功地对测试实例进行了分类,但是,我不确定是否能够成功加载.model文件和存根编译器错误

我已尝试删除
扩展AppCompatActivity
,如果这对.model上载有任何影响。事实证明,要使用
getAssets()
,代码必须在活动中。但是,我仍然不确定模型是否有上载和异常的编译器错误。我遵循了@davidmascharka的基本框架(他还从资产中加载了一个WEKA模型),但我的框架没有编译

这是我的密码:

package com.example.owner.introductoryapplication;

import android.support.v7.app.AppCompatActivity;

import weka.classifiers.Classifier;
import weka.classifiers.rules.DecisionTable;
import weka.core.Attribute;
import weka.core.DenseInstance;
import weka.core.Instances;

import java.util.ArrayList;

public class Test extends AppCompatActivity {
    public static void main(String[] args) {
        Test test = new Test();
        test.start();
    }

    public void start() {
        //LOADS THE MODEL...------------------------------------------------------
        String rootPath = "/assets/";
        String fileName = "PGBD_DecisionTableUPD.model";
        Classifier cls = null;
        try {
            //cls = (Classifier) weka.core.SerializationHelper.read(rootPath + fileName);
            cls = (DecisionTable) weka.core.SerializationHelper.read(getAssets().open(fileName));
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
下面是我的错误输出:

Exception in thread "main" java.lang.RuntimeException: Stub!
    at android.content.Context.<init>(Context.java:67)
    at android.content.ContextWrapper.<init>(ContextWrapper.java:30)
    at android.view.ContextThemeWrapper.<init>(ContextThemeWrapper.java:40)
    at android.app.Activity.<init>(Activity.java:643)
    at android.support.v4.app.SupportActivity.<init>(ComponentActivity.java:46)
    at android.support.v4.app.FragmentActivity.<init>(FragmentActivity.java:68)
    at android.support.v7.app.AppCompatActivity.<init>(AppCompatActivity.java:62)
    at com.example.owner.introductoryapplication.Test.<init>(Test.java:13)
    at com.example.owner.introductoryapplication.Test.main(Test.java:15)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.intellij.rt.execution.application.AppMainV2.main(AppMainV2.java:131)

Process finished with exit code 1
线程“main”java.lang.RuntimeException中的异常:存根! 位于android.content.Context.(Context.java:67) 位于android.content.ContextWrapper.(ContextWrapper.java:30) 在android.view.ContextThemeWrapper.(ContextThemeWrapper.java:40) 在android.app.Activity。(Activity.java:643) 位于android.support.v4.app.SupportActivity(ComponentActivity.java:46) 在android.support.v4.app.FragmentActivity上。(FragmentActivity.java:68) 位于android.support.v7.app.AppCompatActivity。(AppCompatActivity.java:62) 在com.example.owner.introductoryapplication.Test.(Test.java:13) 位于com.example.owner.introductoryapplication.Test.main(Test.java:15) 在sun.reflect.NativeMethodAccessorImpl.invoke0(本机方法)处 位于sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) 在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)中 位于java.lang.reflect.Method.invoke(Method.java:498) 位于com.intellij.rt.execution.application.AppMainV2.main(AppMainV2.java:131) 进程已完成,退出代码为1 我希望程序至少能编译!我完全不知道为什么不是。我试着改变依赖关系的顺序,希望这会有所不同,但没有成功

有什么想法吗


提前感谢。

这可能以前已经讨论过,但是
weka.jar
只允许存根实现。基本上,您必须将运行设置配置为“app”,而不是特定的文件


如果您想查看特定文件的工作方式,那么您可以为您的应用程序使用
debug
选项。

这个问题已经被问到了,希望这个问题能够解决help@rishavprasher谢谢你的链接。它提到我应该在Android emulator上运行这个,或者直接在设备上运行,但我只是使用
System.out
打印它,而不是在设备屏幕上。your welcome@ShounakRay@rishavprasher所以我不能用它来解决我的问题。。。!