포함합니다.항아리 안드로이드 프로젝트(NoClassDefFoundError-VFY:를 해결할 수 없는 새 인스턴스 812)
-
20-12-2019 - |
문제
내가 원하는: 사용 jar 파일을 포함하는 모든 내 모델 클래스(에서 다시 사용하기 위해 웹 서비스 내가로 구분 모델)에서 내 안드로이드 프로젝트입니다.새로운 안드로이드 놓친 것 같아요 그래서 뭔가?그것은 필요한 수출하는 나의 종류가 다르게 그것을 사용할 때에는 안드로이드?
무엇을 얻을:
`11-15 12:26:14.082: E/Trace(1776): error opening trace file: No such file or directory (2)
11-15 12:26:14.152: E/dalvikvm(1776): Could not find class 'ww.entities.model.User', referenced from method com.example.weightwatchersapp.MainActivity.onCreate
11-15 12:26:14.172: W/dalvikvm(1776): VFY: unable to resolve new-instance 812 (Lww/entities/model/User;) in Lcom/example/weightwatchersapp/MainActivity;
11-15 12:26:14.172: D/dalvikvm(1776): VFY: replacing opcode 0x22 at 0x000a
11-15 12:26:14.182: D/dalvikvm(1776): DexOpt: unable to opt direct call 0x1499 at 0x0c in Lcom/example/weightwatchersapp/MainActivity;.onCreate
11-15 12:26:14.212: W/System.err(1776): TEST
11-15 12:26:14.262: D/AndroidRuntime(1776): Shutting down VM
11-15 12:26:14.262: W/dalvikvm(1776): threadid=1: thread exiting with uncaught exception (group=0x40a71930)
11-15 12:26:14.292: E/AndroidRuntime(1776): FATAL EXCEPTION: main
11-15 12:26:14.292: E/AndroidRuntime(1776): java.lang.NoClassDefFoundError: ww.entities.model.User
11-15 12:26:14.292: E/AndroidRuntime(1776): at com.example.weightwatchersapp.MainActivity.onCreate(MainActivity.java:17)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.app.Activity.performCreate(Activity.java:5104)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.app.ActivityThread.access$600(ActivityThread.java:141)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.os.Handler.dispatchMessage(Handler.java:99)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.os.Looper.loop(Looper.java:137)
11-15 12:26:14.292: E/AndroidRuntime(1776): at android.app.ActivityThread.main(ActivityThread.java:5041)
11-15 12:26:14.292: E/AndroidRuntime(1776): at java.lang.reflect.Method.invokeNative(Native Method)
11-15 12:26:14.292: E/AndroidRuntime(1776): at java.lang.reflect.Method.invoke(Method.java:511)
11-15 12:26:14.292: E/AndroidRuntime(1776): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
11-15 12:26:14.292: E/AndroidRuntime(1776): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
11-15 12:26:14.292: E/AndroidRuntime(1776): at dalvik.system.NativeStart.main(Native Method)`
무엇을 했는지: 를 생성하는 그것이 내가 사용하는 간단하 java 프로젝트(아 라이브러리 프로젝트 또는 다음과 같이 수출으로 항아리입니다.나는 사용할 수 있습 같은 라이브러리에서 내 webservice java 프로젝트 없이 문제입니다.
내가 무엇을 시도한다: 1.사용이 자동으로 생성되는 클래스가합니다.고 다음과 같은 추가 코드:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
System.err.println("TEST");// TODO: error here
User user = new User();
user.setDailyPoints(13);
}
- 추가 ww-엔터티를 libs
- 오른쪽 클릭합 lib"을 선택을 추가하여 경로를 구축"
- 청소 프로젝트
- 검사 ww-entities.jar 에서"기 및 내보내기"
- 체크 안드로이드 프라이빗 라이브러리에서"기 및 내보내기"
나는 다음과 같이 많이드는 처리는 유사한 문제이지만,어떻게든 그것은 보인다는 목표를 설정했습니다.점이다.(필요 없음을 말하는 새로운 안드로이드가 필요하고 포괄적인 응답에 대한 noobies 오른쪽?^^)
편집:
I´m using ormlite with my models so i.e. my class User looks like:
public class User implements Serializable {
private static final long serialVersionUID = -2057474913370787753L;
@DatabaseField(generatedId = true)
private long id;
@DatabaseField(canBeNull = false, unique = true)
private String username;
@DatabaseField
private String password;
@DatabaseField
private String email;
@DatabaseField
private String forename;
@DatabaseField
private String surname;
@DatabaseField
private Date birthday;
@DatabaseField
private String sex;
@DatabaseField
private double height;
@DatabaseField
private int dailyPoints;
@DatabaseField
private int weeklyPoints;
@DatabaseField(foreign = true, foreignAutoCreate = true, foreignAutoRefresh = true)
private OnlineUserFlags onlineUserFlags;
@DatabaseField
private boolean showProfileOnline;
public User() {
}
public User(String username, String password, String email, String forename, String surname, Date birthday, String sex, double height, int dailyPoints, int weeklyPoints, OnlineUserFlags onlineUserFlags, boolean showProfileOnline) {
super();
this.username = username;
this.password = password;
this.email = email;
this.forename = forename;
this.surname = surname;
this.birthday = birthday;
this.sex = sex;
this.height = height;
this.dailyPoints = dailyPoints;
this.weeklyPoints = weeklyPoints;
this.onlineUserFlags = onlineUserFlags;
this.showProfileOnline = showProfileOnline;
}
@Override
public int hashCode() {
//generated hascode method
}
@Override
public boolean equals(Object obj) {
//generated equals method
}
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
//...getters/setters
}
올바른 솔루션이 없습니다
다른 팁
가장 쉬운 방법이(SDK 도구 0.22.2.1,에서 이상)을 내보내지 않 항아리지만,대신에 추가 ww-entities
프로젝트 종속성으로 당신의 안드로이드 프로젝트(Build Path>프로젝트).
당신은 그런 다음 필요가 있는지 확인할 확인 ww-entities
순서와 수출 탭입니다.
제휴하지 않습니다 StackOverflow