私は、1つのアクティビティといくつかのアプリケーションクラスが含まれている単純なアプリケーションを作成しようとしています。私は最新のAndroidスタジオ、新しく生成されたベアボーンプロジェクト、APIレベル23(アンドロイド6.0.1、私の電話用)を使用しています。シンプルなAndroid StudioプロジェクトでNoClassDefFoundErrorが得られます
私が働いているアクティビティの外部にあるプロジェクトクラスを呼び出すときにVMで実行時にエラーが発生することを除いて、ほとんどの場合、アプリケーションを展開、開いて使用することができます。起こることになっているもの
はそれが
- アクティビティログで、外部のクラスは、それが深刻な仕事 をやって開始されますいくつかの非常にマイナーな作品
- 外部クラスのログを行います
最初のlog文に達して突然実行が停止したように見え、外部クラスのログ行は決して到着しません。その後1分後にエラー。私の外部のクラスがコンパイルなどに含まれていないと感じる。
私はしばらくの間Java開発者でしたが、私はアンドロイド開発者とgradleの経験の横にあります。ここで
は私のプロジェクトです:https://gitlab.com/Marnes/leaumar.net-android
関連クラスは、関連するコードセクションがアップロードテストが行われ、PresetUploadが呼び出されHomeActivity、の下で
です。データが投稿される直前のメッセージは表示されません。
03-11 13:39:49.998 5295-5295/leaumar.net.filedump I/leaumar.net.filedump.HomeActivity: user wants to test upload
03-11 13:39:49.999 5295-5295/leaumar.net.filedump I/art: Rejecting re-init on previously-failed class java.lang.Class
03-11 13:39:49.999 5295-5295/leaumar.net.filedump I/art: Rejecting re-init on previously-failed class java.lang.Class
03-11 13:41:05.139 5295-5381/leaumar.net.filedump I/art: Rejecting re-init on previously-failed class java.lang.Class
03-11 13:41:05.140 5295-5381/leaumar.net.filedump E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #1
Process: leaumar.net.filedump, PID: 5295
java.lang.RuntimeException: An error occurred while executing doInBackground()
...
Caused by: java.lang.NoClassDefFoundError: leaumar.net.filedump.http.PresetUpload$1
...
03-11 13:41:05.141 5295-5295/leaumar.net.filedump I/Choreographer: Skipped 4508 frames! The application may be doing too much work on its main thread.
この種の例外の性質を理解するために検索エンジンを試したことはありますか? – GhostCat
私はそれが何を意味するのか知っています、私はjavaに新しい人ではありません。私はアンドロイドデベロッパーとグラデルとそのような(私はいつもmavenとデスクトップJavaを使用した)新しいです。なぜ私はクラスが作成されていないこと、それらを作成していないか、なぜ消えているのか、主なアクティビティが実行されている間に私のプロジェクトパッケージがコンパイルされていないのか、私の全体的な問題のグーグルでは、「デフォルトでアクティビティが置かれているパッケージにプロジェクトクラスを追加し、gradle.buildのパッケージへの参照を追加する」などの作業をすることはできません。 – Marnes
十分に公正。しかし、あなたはその質問を編集したいかもしれません、我々はそのスタックトレースの何百行も必要としません。私個人的には、ステップバイステップのチュートリアルから始めて、さまざまな設定を正しく行う方法を学びます。そして記録のために、私はここでdownvoteしませんでした。 – GhostCat